![]() Data processing device and method for restoring an operating state
专利摘要:
Es wird ein Verfahren und eine Datenverarbeitungseinrichtung zur Wiederherstellung eines Betriebszustandes bereitgestellt. Der Zustand eines Systems kann durch einen oder mehrere Aspekte des Systems definiert werden. Die Aspekte können die graphische Benutzeroberfläche, die Datenbank, die Sicherheit, die Benutzerkonfiguration, die Ortskonfiguration und den gegenwärtigen Benutzer beinhalten. Der gegenwärtige Zustand des Systems kann durch Verwendung dieser auf Aspekten basierenden Definition überwacht werden. Zum Beispiel kann der gegenwärtige Zustand des Systems durch Untersuchen der Aspekte, die den Zustand definieren, bestimmt werden. Darüber hinaus kann der gegenwärtige Zustand der Vorrichtung durch Verwendung dieser auf Aspekten basierenden Definition abgeändert werden. Die Aspekte können so verändert werden, dass der Zustand des Systems zu einem vorbestimmten Zustand verändert wird.A method and a data processing device for restoring an operating state are provided. The state of a system can be defined by one or more aspects of the system. Aspects can include the graphical user interface, database, security, user configuration, location configuration and the current user. The current state of the system can be monitored using this aspect based definition. For example, the current state of the system can be determined by examining the aspects that define the state. In addition, the current state of the device can be changed using this aspect-based definition. The aspects can be changed so that the state of the system is changed to a predetermined state. 公开号:DE102004025264A1 申请号:DE200410025264 申请日:2004-05-19 公开日:2004-12-30 发明作者:Stefan Weichselbaum 申请人:Siemens AG; IPC主号:G06F11-00
专利说明:
[0001] DieAutomatisierung von Prüfverfahrenist sehr vielversprechend fürdas leistungsfähigeund zuverlässigePrü-fenvon Produkten. Idealerweise würdenPrüfprogrammedie Ausführungohne den Bedarf an menschlicher Überwa-chungautomatisch in einer arbiträrenAbfolge vorneh-men. Die Realitätder Prüfautomatisierungkann jedoch diesem Versprechen nicht entsprechen.TheAutomation of test proceduresis very promising forthe powerfuland reliableCheckof products. Ideally, wouldtest programsexecutionwithout the need for human surveillanceautomatically in an arbitraryDo the sequence. The realitythe test automationhowever, cannot live up to this promise. [0002] Dasautomatisierte Prüfenkann danach trachten, eine Vielfalt von Prüfprotokollen wie etwa zufällig ausgewählte Protokolleoder eine Vielfalt von Protokollen zu prüfen. Das automatisierte Prüfen istjedoch typischerweise in den gewähltenPrüfprotokollenbeschränkt.Zum Beispiel kann die Auswahl von Protokollen für das Prüfen auf jene Protokolle beschränkt sein,die einen gemeinsamen Ausgangspunkt aufweisen. Andernfalls, wennProtokolle ohne einen gemeinsamen Ausgangspunkt gewählt werden,kann ein manueller Eingriff und/oder ein Neuhochfahren der Datenverarbeitungseinrichtung,nachfol-gend auch einfach System genannt, erforderlich sein, umdie Prüfungauszuführen.Theautomated testingcan seek a variety of test protocols such as randomly selected protocolsor review a variety of protocols. Automated testing ishowever typically in the chosen onesaudit trailslimited.For example, the selection of protocols for testing can be limited to those protocolsthat have a common starting point. Otherwise, ifProtocols are chosen without a common starting point,a manual intervention and / or a restart of the data processing device,hereinafter simply called the system, may be required tothe examperform. [0003] Darüber hinaussucht ein automatisiertes Prüfennach außergewöhnlichenVorfällenim System wie etwa Fehlern im System. Wenn frühere automatisierte Prüfschemataauf einen außergewöhnlichenUmstand stießen,waren sie nicht fähig,diesem in einer wirksamen Weise zu begegnen. Frühere automatisierte Systemekonnten z.B. ein-fach anhalten und einen manuellen Eingriff durcheine Bedienperson benötigen.Der manuelle Eingriff kann ein Neuhochfahren des Systems beinhalten.Wenn das Neuhochfahren nicht erfolgreich ist, konnte die Bedienperson dannz.B. die Software neuinstallieren, um das Problem zu lösen. DieseAbhängigkeitvon einem Eingriff durch eine Bedienperson ist sowohl von einemzeitlichen als auch von einem menschlichen Blickwinkel her aufwändig. DiePrüfsoftwarekann füreinen beträchtlichenZeitraum untätigruhen, bevor eine Bedienperson eingreifen kann, um das Problem zulösen.Ferner kann die Zeit, die nö-tigist, um die Software neu zu installieren, beträcht-lich sein.Furthermoreis looking for automated testingafter extraordinaryincidentsin the system such as errors in the system. If previous automated test schemesfor an extraordinaryCircumstanceweren't they ableto counter this in an effective manner. Previous automated systemscould e.g. just stop and go through a manual interventionneed an operator.Manual intervention may involve restarting the system.If the restart is unsuccessful, the operator could thene.g. reinstall the software to solve the problem. Thisdependencean operator intervention is both an interventiontime consuming as well as from a human point of view. Thetest softwarecan fora considerable onePeriod idlerest before an operator can intervene to resolve the problemto solve.Furthermore, the time it takesis necessary to reinstall the software. [0004] Andereautomatisierte Systeme haben versucht, einen außergewöhnlichen Vorfall auszugleichen,indem sie tat-sächlicheinen Neustart oder ein Neuhochfahren des Prüfsystems verursachen. AlleProgramme, die notwendig sind, um das Prüfsystem auszuführen, werdenneu gela-den, wodurch das System neuinitialisiert wird. Das Neu-ladender Systemsoftware kann der Prüfautomatisierungeine Wiederherstellung nach einem schwerwiegenden Feh-ler ermöglichen.Diese Lösungist jedoch ebenfalls un-zulänglich,da das Neuhochfahren eine „BruteForce" Me-thodedarstellt, die das gesamte System einschließlich jener Abschnitte des Systems,die korrekt tätigsind, beeinflusst. Die mit dem Neuladen der Systemsoftware verbundeneZeit kann beträchtlichsein, insbesondere dann, wenn Systeme große Dateien aufweisen, die inei-nen Direktzugriffsspeicher geladen werden müssen. Fer-ner kann das Neuhochfahrendes Systems wertvolle Infor-mationen zum Diagnostizieren des außergewöhnlichenVor-falls zerstören.Otherautomated systems tried to compensate for an exceptional incident,by actuallycause the test system to restart or restart. AllPrograms that are necessary to run the test systemreloaded, which reinitializes the system. The reloadthe system software can the test automationenable recovery from a serious failure.This solutionis also inadequate,because the new start-up is a “bruteForce "methodwhich represents the entire system including those sections of the systemwho acted correctlyare influenced. The one associated with reloading the system softwareTime can be considerable, especially when systems have large files stored ina random access memory must be loaded. The restart can also be doneof the system valuable information for diagnosing the extraordinaryDestroy if necessary. [0005] Wasbenötigtwird, ist ein besseres Verfahren und eine Datenverarbeitungseinrichtungzum automatisierten Prü-fen.Whatneededis a better method and data processing facilityfor automated testing. [0006] EinComputersystem kann sich währendseiner Betriebs-dauer in einer Vielfalt von Zuständen befinden (wie et-wa während desautomatisierten Prüfens,der Verwendung im praktischen Einsatz usw.). Die Zustände desCompu-tersystems könnendurch einen oder mehrere Aspekte des Computersystems definiert wer den.Die Aspekte, die den Zustand definieren, können voneinander unabhängig seinund könnenein Maß für den gegenwärtigen Zustanddes Systems sein. Beispiele fürAspekte könnendie graphische Benutzeroberfläche,die Datenbank, die Sicherheit, die Benutzerkonfiguration, die Ortskonfigurationund den gegenwärtigen Benutzerbeinhalten. Das Verwenden von Aspekten zum Definieren des Computersystemser-leichtert das Nachprüfenund/oder Abänderndes Betriebs des Computersystems.OnComputer system can change duringits operating time in a variety of states (such as during theautomated testing,use in practical use, etc.). The states of theComputer systems candefined by one or more aspects of the computer system.The aspects that define the state can be independent of each otherand cana measure of the current stateof the system. examples forAspects canthe graphical user interface,the database, security, user configuration, location configurationand the current userinclude. Using aspects to define the computer systemmakes checking easierand / or modificationthe operation of the computer system. [0007] Einerster Gesichtspunkt der Erfindung ist das Nachprü-fen desZustands des Computersystems unter Verwendung mehrerer Aspekte.Der Zustand des Computersystems kann nachgeprüft werden, nachdem ein Softwareprogrammausge-führtist. Die Ausführungdes Softwareprogramms kann erwartete Ergebnisse wie etwa eine Veränderungim Zu-stand des Computersystems in einen erwarteten Zustand miterwarteten Aspekten mit sich bringen. Diese erwar-teten Aspektekönnenmit den tatsächlichenAspekten des Computersystems nach dem Ausführen des Softwarepro-grammsverglichen werden, um nachzuprüfen,ob der tat-sächlicheZustand des Computersystems der erwartete Zustand ist oder nicht.Es gibt viele verschiedene Arten von Softwareprogrammen, die ausgeführt werdenkönnen,einschließlicheines automatisierten Prüfprogrammswie etwa eines Vorbedingungsprüfprogramms,eines Prüfungs-skriptsund eines Nachbedingungsprüfprogramms. Das Ü-berwachendes Computersystems kann das automatisierte Prüfen erleichtern, da man bestimmen kann,ob sich der Computer in einem bekannten oder in einem unbekanntenZustand befindet.A first aspect of the invention is checking the state of the computer system using several aspects. The state of the computer system can be checked after a software program is executed. Execution of the software program can bring expected results, such as a change in the state of the computer system to an expected state with expected aspects. These expected aspects can be compared with the actual aspects of the computer system after the execution of the software program are compared to check whether the actual state of the computer system is the expected state or not. There are many different types of software programs that can be run, including an automated check program such as a precondition check program, a check script, and a post condition check program. Monitoring the computer system can facilitate automated testing because it can determine whether the computer is in a known or an unknown state. [0008] EineAusführungsformdes ersten Gesichtspunkts der Erfindung ist eine Datenverarbeitungseinrichtungzum Nachprüfendes Zustands des Computersystems. Die Datenverarbeitungseinrichtungkann Folgendes umfassen: eine Einrichtung, um den Zustand des Computersystemsdurch mehrere Aspekte des Computersystems zu definieren, eine Einrichtung,um auf ein Softwareprogramm zuzugreifen, um das Computersys tem ineinen durch mehrere erwartete Aspekte definierten Zustand zu bringen,eine Einrich-tung, um das Softwareprogramm am Computersystem auszu-führen, wonachsich das Computersystem in einem durch mehrere gegenwärtige Aspektedefinierten gegenwärtigenZustand befindet, und eine Einrichtung, um auf Basis eines Vergleichszumindest eines der mehreren gegenwärtigen Aspekte mit zumindesteinem der mehreren erwarte-ten Aspekte nachzuprüfen, ob der gegenwärtige Zustanddes Computersystems der erwartete Zustand ist.Aembodimentof the first aspect of the invention is a data processing deviceto checkthe state of the computer system. The data processing devicemay include: a facility for checking the state of the computer systemto define through multiple aspects of the computer system, a facilityto access a software program to run the computer system inbring a state defined by several expected aspects,a device for executing the software program on the computer system, after whichthe computer system in one through several current aspectsdefined currentState located, and a facility to based on a comparisonat least one of the several current aspects with at leastcheck one of the several expected aspects as to whether the current statethe expected state of the computer system. [0009] Eineandere Ausführungsformdes ersten Gesichtspunkts der Erfindung ist ein Verfahren zum Nachprüfen desZustands des Computersystems. Das Verfahren kann Folgendes umfassen:das Definieren des Zustands des Computersystems durch mehrere Aspektedes Computersystems, das Zugreifen auf ein Softwareprogramm, umdas Computersystem in einen durch mehrere erwartete Aspekte definiertenerwarteten Zustand zu bringen, das Ausführen des Softwareprogrammsam Computersystem, wonach sich das Computersystem in einem durchmehrere gegenwärtigeAspekte definierten gegenwärtigenZustand befindet, und das Nachprüfenauf Basis eines Vergleichs zumindest ei-nes der mehreren gegenwärtigen Aspektemit zumindest einem der mehreren erwarteten Aspekte, ob der gegenwär-tige Zustanddes Computers der erwartete Zustand ist.Aother embodimentThe first aspect of the invention is a method for checking theState of the computer system. The process can include:defining the state of the computer system through several aspectsof the computer system, accessing a software program in orderthe computer system in one defined by several expected aspectsbring the expected state, the execution of the software programon the computer system, according to which the computer system in oneseveral currentAspects defined currentCondition, and checkingbased on a comparison of at least one of the several current aspectswith at least one of the several expected aspects, whether the current statethe expected state of the computer. [0010] Einzweiter Gesichtspunkt der Erfindung ist das Abändern des Zustands des Computersystemsdurch Veränderneines Aspekts oder von Aspekten, die den Zustand des Computersystemsdefinieren. Das Veränderndes Zustands des Systems erleichtert das automatisierte Prüfen desComputersystems. Zum Beispiel kann das Computersystem während desautomatisierten Prüfensin einen unbekannten Zustand eintreten. Falls sich das System ineinem unbekannten Zustand befindet, können die Aspekte in einen bekanntenZustand wie etwa dem Systemvoreinstellungszustand verändert werden.Als anderes Beispiel könnenim Verlauf des automatisierten Prüfens unterschiedliche Prüfungen ausgeführt werden,die von unterschiedlichen Zuständenausge hen. In derartigen Prüfabfolgenkann der Zustand verändertwerden, nachdem die erste Prüfabfolgeausgeführtwurde, so dass die zweite Prüfabfolgemit einem von der ersten Prüfabfolgeunterschiedlichen Ausgangspunkt ausgeführt werden kann. Ferner kanndie Abänderungder Aspekte voneinander unabhängigsein und kann iterativ durchgeführtwerden.Onthe second aspect of the invention is changing the state of the computer systemby changingan aspect or aspects that affect the state of the computer systemdefine. The changingthe state of the system facilitates the automated checking of theComputer system. For example, during theautomated testingenter an unknown state. If the system is inan unknown state, the aspects can be translated into a known oneState such as the system default state.As another example, you candifferent tests are carried out in the course of automated testing,that of different statesgo out. In such test sequencescan change the stateafter the first test sequenceaccomplishedwas, so the second test sequencewith one of the first test sequencedifferent starting point can be executed. Furthermore,the amendmentthe aspects are independent of each otherand can be carried out iterativelybecome. [0011] EineAusführungsformdes zweiten Gesichtspunkts ist ei-ne Datenverarbeitungseinrichtungzum Abänderndes Zu-stands des Computersystems. Die Datenverarbeitungsein-richtungkann Folgendes umfassen: eine Einrichtung, um den Zustand des Computersystemsdurch mehrere Aspekte des Computersystems zu definieren, eine Einrichtung,um ein Softwareprogramm am Computersystem auszuführen, wo-nach sich das Computersystemin einem durch mehrere ge-genwärtigeAspekte definierten gegenwärtigenZustand befindet, eine Einrichtung, um auf Basis des gegenwär-tigenZustands des Systems zu bestimmen, ob ein automa-tisches Wiederherstellungsprogrammauszuführenist, und eine Einrichtung, um das automatische Wiederherstellungsprogrammauszuführen,wobei das automatische Wiederherstellungsprogramm zumindest einenAspekt abän-dert,um das Computersystem in einen Wiederherstel-lungszustand zu bringen.Aembodimentthe second aspect is a data processing deviceto changethe state of the computer system. The data processing devicemay include: a facility for checking the state of the computer systemto define through multiple aspects of the computer system, a facilityto execute a software program on the computer system, whereupon the computer systemin one by several presentAspects defined currentState located, a facility to be based on the currentState the system to determine whether an automatic recovery programperformis, and a facility to the automatic recovery programperform,the automatic recovery program at least oneChanges aspect,to bring the computer system into a recovery state. [0012] Eineandere Ausführungsformdes zweiten Gesichtspunkts ist ein Verfahren zum Abändern desZustands des Computersystems. Das Verfahren kann Folgendes umfassen:das Definieren des Zustands des Computersystems durch mehrere Aspektedes Computersystems, das Ausführeneines Softwareprogramms am Computersystem, wonach sich das Computersystemin einem durch mehrere gegenwärtigeAs-pekte definierten gegenwärtigenZustand befindet, das Bestimmen auf Basis des gegenwärtigen Zustandsdes Sys-tems, ob ein automatisches Wiederherstellungsprogramm auszuführen ist,und das Ausführendes automatischen Wiederherstellungsprogramms, wobei das automatischeWiederherstellungsprogramm zumindest einen Aspekt abän-dert,um das Computersystem in einen Wiederherstel-lungszustand zu bringen.Aother embodimentThe second aspect is a method for changing theState of the computer system. The process can include:defining the state of the computer system through several aspectsof the computer system, the runninga software program on the computer system, according to which the computer systemin one by several presentAspects defined currentState, determining based on the current statethe system, whether an automatic recovery program is to be executed,and runningof the automatic recovery program, the automaticRecovery program changes at least one aspectto bring the computer system into a recovery state. [0013] 1 ist ein Blockdiagrammeines Computersystems, das verwendet werden kann, um ein Verfahren undeine Vorrichtung zur auf Aspekten basierenden Wiederherstellungnach einem Gesichtspunkt der Erfindung zu implementieren. 1 Figure 3 is a block diagram of a computer system that can be used to implement a method and implement an aspect-based recovery device according to an aspect of the invention. [0014] 2 ist ein Ablaufdiagrammvon möglichenZuständenbeim Prüfeneiner Anwendung einer Ausführungsform. 2 is a flowchart of possible states when testing an application of an embodiment. [0015] 3 ist ein Betriebsablaufdiagrammeiner Ausführungsformdes auf Aspekten basierenden Wiederherstellungssystems und -verfahrens. 3 FIG. 10 is an operational flow diagram of one embodiment of the aspect based recovery system and method. [0016] 4 ist ein Klassendiagrammfür Objekte,die unter Verwendung einer objektorientierten Programmierung codiertsind, in einem in 3 beschriebenen,auf Aspekten basierenden Wiederherstellungssystem und – verfahren. 4 Fig. 3 is a class diagram for objects encoded using object-oriented programming in one in 3 described, aspect-based recovery system and method. [0017] 5 ist ein Ablaufdiagrammfür dieobjektorientierte Kodierung in 4 mitnormalem Verhalten währendder Ausführungeiner Prüfung. 5 is a flowchart for object-oriented coding in 4 with normal behavior while running an exam. [0018] 6 ist ein Ablaufdiagrammfür dieobjektorientierte Kodierung in 4 mitabnormalem Verhalten und Wiederherstellung während der Vorbedingung. 6 is a flowchart for object-oriented coding in 4 with abnormal behavior and recovery during the precondition. [0019] 7 ist ein Ablaufdiagrammfür dasobjektorientierte Kodierung in 4 mitabnormalem Verhalten und Wiederherstellung während der Nachbedingung. 7 is a flow chart for object-oriented coding in 4 with abnormal behavior and recovery during post-condition. [0020] 8 ist ein Ablaufdiagrammeiner zweiten Ausführungsformvon möglichenZuständeneinschließlich eines übergeordnetenZustands beim Prüfeneiner Anwendung. 8th FIG. 10 is a flowchart of a second embodiment of possible states including a higher state when testing an application. [0021] 9 ist ein Ablaufdiagrammeiner dritten Ausführungsformvon möglichenZuständeneinschließlich mehrerer übergeordneterZuständebeim Prüfeneiner Anwendung. 9 FIG. 10 is a flowchart of a third embodiment of possible states including multiple parent states when testing an application. [0022] 10 ist ein anderes Beispieleines Klassendiagramms fürObjekte, die unter Verwendung einer objektorientierten Programmierungcodiert sind, in einem auf Aspekten basierenden Wiederherstellungssystem und – verfahren. 10 FIG. 10 is another example of a class diagram for objects encoded using object oriented programming in an aspect based recovery system and method. [0023] 11 ist ein Ablaufdiagrammfür dieobjektorientierte Kodierung in 10 mitnormalem Verhalten währendder Ausführungeiner Prüfung. 11 is a flowchart for object-oriented coding in 10 with normal behavior while running an exam. [0024] 12 ist ein Ablaufdiagrammfür dieobjektorientierte Kodierung in 10 mitabnormalem Verhalten und Wiederherstellung. 12 is a flowchart for object-oriented coding in 10 with abnormal behavior and recovery. [0025] EinComputersystem kann ein auf Software basierendes Produkt, ein Software/Hardware-Produkt oderein auf Hardware basierendes Produkt sein. Während seiner Betriebsdauerkann sich das Computersystem in vielen Be-triebszuständen befinden.Einige Betriebszuständekön-nenbekannte oder erwartete Zuständesein, und andere Betriebszuständekönnenunbekannte oder unerwartete Zu-stände sein. Die Fähigkeit, denBetriebszustand des Computersystems zu überwachen und/oder zu verändern gestatteteine bessere Steuerung des Computersystems. Eine Weise des Überwachensund/oder Verändernsdes Betriebs des Computersystems erfolgt durch Definieren des Zustandsdes Computersystems auf Basis eines oder mehrerer Aspekte. Wie nachstehendausführlicherbesprochen wird, kann der Zustand durch Analysieren der Aspekte,die den Zustand definieren, wie etwa durch Vergleichen der Aspektemit bekannten Aspekten, über wachtwerden. Darüberhinaus kann der Zustand durch Verändern der Aspekte zu bekanntenAspekten und dadurch Veränderndes Zustands des Computersystems abgeändert werden.OnComputer system can be a software based product, a software / hardware product orbe a hardware-based product. During its operating lifethe computer system can be in many operating states.Some operating conditionscanknown or expected conditionsbe, and other operating conditionscanunknown or unexpected conditions. The ability toPermitted to monitor and / or change the operating state of the computer systembetter control of the computer system. A way of monitoringand / or changingthe operation of the computer system is done by defining the statethe computer system based on one or more aspects. As followsin more detailthe condition can be discussed by analyzing the aspectsthat define the state, such as by comparing the aspectswith known aspects, watches overbecome. About thatin addition, the state can be changed by changing the aspects to known onesAspects and thereby changethe state of the computer system can be changed. [0026] Dieauf Aspekten basierende Definition des Computersystems ermöglicht injeder Phase der Betriebsdauer des Computersystems eine bessere Kontrolledes Computersys-tems. Eine Phase des Systems ist der Betrieb desSys-tems im praktischen Einsatz. Eine wie im obigen Ab-schnitt "Allgemeiner Standder Technik" besprochenean-dere Phase ist mit dem Prüfenvon Systemen oder Anwendungen verbunden. Eine Art des Prüfens istdas automatisierte Prüfen.TheAspect-based definition of the computer system enables inEvery phase of the life of the computer system better controlof the computer system. One phase of the system is the operation of theSystems in practical use. As in the above section "General statusthe technology "discussedanother phase is testingconnected by systems or applications. One type of testing isautomated testing. [0027] Dasautomatisierte Prüfenwird typischerweise vor der Freigabe des Produkts für den praktischenEinsatz durchgeführt.Produkte können,mit wenig oder keinerlei menschlichem Eingriff, einer Vielfalt vonPrüfungenwie etwa einer Regressionsprüfung,einer Integrationsprüfungoder einer Gültigkeitsprüfung unterzogen werden.Zum Beispiel ist die Regressionsprüfung für die Qualitätssicherungvon Veränderungenan einem bewährtenPro-dukt wie etwa neuen Versionen von höchster Bedeutung. Zusätzlich zumPrüfender beabsichtigten Auswirkungen der Veränderungen prüft die Regressionsprüfung nach,dass die Veränderungenkeine unbeabsichtigten Auswirkungen wie etwa ein Verändern desVerhaltens der bewährtenFunktionalitäterzeugt haben. Zum Beispiel kann eine Veränderung in einem Programm für den Softwarecodeeines Produkts sowohl beabsichtigte als auch unbeabsichtigte Folgenfür dasGesamtprodukt aufweisen, die dazu führen, dass das Produkt in einenunbekannten Zustand eintritt. Das automatisierte Prüfen gestatteteine Untersuchung dieser Folgen. Die durch die PrüfungsautomatisierungsprotokollegeprüftenProdukte könnenProdukte, die zur Gänzeaus Software bestehen, Software/Hardware-Produkte, und Produkte, die zur Gänze ausHardware bestehen, beinhalten. Prüfprogramme können gestaltetwerden, um ein Produkt oder eine Anwendung zu prüfen.Automated testing is typically performed before the product is released for practical use. With little or no human intervention, products can do a variety of tests such as a regression check, an integration check or a validity check. For example, the regression test for the quality assurance of changes to a proven product, such as new versions, is of the utmost importance. In addition to checking the intended effects of the changes, the regression check verifies that the changes have not produced any unintended effects, such as changing the behavior of the proven functionality. For example, a change in a program for the software code of a product can have both intended and unintended consequences for the overall product that result in the product entering an unknown state. The automated checking allows an investigation of these consequences. The products tested by the test automation protocols may include products that are entirely software, software / hardware products, and products that are entirely hardware. Test programs can be designed to test a product or application. [0028] DasPrüfenumfasst typischerweise das Simulieren verschiedenster Betriebsabfolgenunter Verwendung einer Serie von Prüfungen, die auf vielfältige Weisewie etwa zufälligoder systematisch gewähltwerden können.Wie im obigen Abschnitt "AllgemeinerStand der Technik" be-sprochenkönnenSchwierigkeiten beim Ausführeneiner Serie von Prüfungenbestehen, wenn die Prüfungennicht im selben Voreinstellungszustand beginnen. Eine erste Prüfung kannin einem ersten übergeordnetenZustand be-ginnen, und eine zweite Prüfung kann in einem zweiten übergeordnetenZustand beginnen. In einem Zustandsmodell für ein Computersystem kann ein übergeordneterZu-stand einen Ausgangszustand fürdie Ausführungeines Softwareprogramms wie etwa eines Prüfungsskripts umfas-sen. Der übergeordneteZustand kann ein Zustand sein, der sich vom Systemvoreinstellungszustanddes Systems unterscheidet. Der Versuch eines automatischen Prüfens derersten und zweiten Prüfungkann aufgrund unter-schiedlicher Ausgangspunkte oder übergeordneter Zustän-de derPrüfungenschwierig sein. Das Verwenden des wie nachstehend besprochenen,auf Aspekten basierenden Wie-derherstellungsmechanismus kann einautomatisches Prü-feneiner Vielfalt von Prüfprotokollenauf eine leistungsfähigereund einfachere Weise ermöglichen.TheChecktypically involves simulating a wide variety of operational sequencesusing a series of exams in a variety of wayshow about randomor chosen systematicallycan be.As in the "GeneralState of the art "canDifficulty runninga series of examspass when the examsdo not start in the same default state. A first test canin a first parentState begin, and a second exam can be done in a second parentState begin. In a state model for a computer system, a parent canState was an initial state forexecutiona software program, such as an exam script. The parentState can be a state that differs from the system default stateof the system differs. Trying to automatically check thefirst and second examcan be due to different starting points or superordinate statesexamsto be difficult. Using what is discussed belowAspect based recovery mechanism can be aautomatic checkinga variety of test reportsfor a more powerful oneand make it easier. [0029] Darüber hinauskann der Zustand des Systems unter Verwendung des auf Aspekten basierendenWiederherstellungsmechanismus von einem unbekannten Zustand zu einembekannten Zustand verändertwerden, was ein leistungsfähigesPrüfenermöglicht.Durch ein automatisiertes Prüfenunter Verwendung der Serie von Prüfungen kann die unter Prüfung stehendeAnwendung bewertet werden. Wenn geprüft wird, kann die unter Prüfung stehendeAnwendung in einen unbekannten Zustand eintreten oder einem außergewöhnlichen Umstandwie etwa einem Abstürzenoder einem Aufhängendes Systems begegnen. Diese außergewöhnlichenUmständekönnenauf einen Fehler im Prüfprogrammoder auf einen Mangel in der unter Prüfung stehenden Anwendung zurückzuführen sein.Zum Beispiel kann das Prüfprogrammden Fehler verursachen, der zum Eintritt in den unbekannten Zustand führt. Alternativkann eine Veränderungin der Software zu einer unbeabsichtigten Folge geführt haben,die zum Eintritt in den unbekannten Zustand führt. Ungeachtet dessen kann deraußergewöhnlicheUmstand analysiert werden, um seine Ursache zu bestimmen. Und derauf Aspekten basierende Wiederherstellungsmechanismus kann das Systemrascher als ein Neuhochfahren des Systems in einen bekannten Zustandbringen.Furthermorecan the state of the system using the aspect basedRecovery mechanism from an unknown state to oneknown state changedbecome what a powerfulCheckallows.Through automated testingusing the series of exams, the one under examApplication can be evaluated. When testing, the one under test canApplication entering an unknown state or an exceptional circumstancelike a crashor hanging upof the system. These extraordinarycircumstancescanfor an error in the test programor due to a defect in the application under test.For example, the test programcause the error that leads to entering the unknown state. alternativecan be a changehave resulted in an unintended consequence in the software,which leads to the entry into the unknown state. Regardless, theextraordinaryCircumstances are analyzed to determine its cause. And theAspect based recovery mechanism can the systemfaster than rebooting the system to a known statebring. [0030] UnterHinwendung auf die Zeichnungen, in denen sich gleiche Bezugszeichenauf gleiche Elemente beziehen, zeigt 1 einBlockdiagramm eines Computers 20, der verwendet werdenkann, um ein Verfahren und eine Datenverarbeitungseinrichtung für die aufAspekten basieren-de Wiederherstellung nach einem Gesichtspunktder Er-findung auszuführen. 1 und die folgende Bespre-chungsollen eine kurze allgemeine Beschreibung einer geeigneten Rechenumgebunggeben, in der die Ausfüh-rungsformenausgeführtwerden können.In einer Anwen-dung wird die auf Aspekten basierende Wiederherstellungauf die Automatisierung des Prüfensvon Produkten ange-wandt. Der Computer 20 kann verwendetwerden, um eine Vielfalt von Produkten einschließlich eines Software-Produkts, das inden Systemspeicher 22 des Computers 20 geladenwerden kann, eines Hardware-Produkts, oder ei-nes Software/Hardware-Produktszu prüfen.Das Hardware-Produkt kann in der Hardware 56 implementiertsein und übereine Anwendungshardwareschnittstelle 55 kommuni-zieren.Alternativ kann das Hardware- oder das Hard-ware/Software-Produktin einer Netzwerkgerät 49 imple-mentiertsein und überein lokales Netz (LAN) 51 oder ein Fernnetz (WAN) 52 mitdem Computer 20 kommunizie-ren.Referring to the drawings, in which like reference numerals refer to like elements 1 a block diagram of a computer 20 that can be used to implement a method and data processing device for aspect-based recovery from an aspect of the invention. 1 and the following discussion is intended to provide a brief general description of a suitable computing environment in which the embodiments can be carried out. In one application, aspect-based restoration is applied to the automation of product testing. The computer 20 can be used to run a variety of products including a software product in the system memory 22 of the computer 20 can be loaded, a hardware product, or a software / hardware product. The hardware product can be found in the hardware 56 be implemented and via an application hardware interface 55 communicate. Alternatively, the hardware or hardware / software product can be in a network device 49 be implemented and via a local area network (LAN) 51 or a wide area network (WAN) 52 with the computer 20 communicate. [0031] Obwohldies nicht erforderlich ist, sind die Ausführungsformen im allgemeinenKontext von computerausführbarenBefehlen wie etwa Programm-Modulen beschrieben, die durch einenComputer ausgeführtwerden. Im Allgemeinen beinhalten Programm-Module Routinen, Programme, Objekte,Komponenten, Datenstrukturen usw., die bestimmte Aufgaben durchführen oderbestimmte abstrakte Datenarten verarbeiten. Darüber hinaus versteht der Fachmann, dass die Ausführungsformenmit anderen Computersystemkonfigurationen einschließlich Handgeräten, Multiprozessorsystemen,mikroprozessorgestützteroder programmierbarer Verbraucherelektronik, Netzwerkpersonalcomputern,Minicomputern, Großrechnercomputernund dergleichen ausgeführtwerden können.Die Ausführungsformenkönnenauch in verteilten Rechenumgebungen ausgeführt werden, in denen Aufgabendurch Netzwerkgerätedurchgeführtwerden, die durch ein Kommunikationsnetz verbunden sind. In einerverteilten Rechenumgebung kön-nensich Programm-Module sowohl in lokalen als auch in Fernspeichervorrichtungenbefinden.Although not required, the embodiments are described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. In general, program modules contain routines, programs, objects, components, data structures, etc. that perform certain tasks or process certain abstract types of data. Dar Furthermore, those skilled in the art understand that the embodiments can be implemented with other computer system configurations including handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network personal computers, minicomputers, mainframe computers and the like. The embodiments can also be performed in distributed computing environments in which tasks are performed by network devices that are connected by a communication network. In a distributed computing environment, program modules can be located in both local and remote storage devices. [0032] Bezugnehmend auf 1 beinhalteteine beispielhafte Datenverarbeitungseinrichtung zum Ausführen dereinen Ausführungsformeine Allzweck-Rechenvorrichtung in der Form eines herkömmlichenComputers 20, der eine Verar-beitungseinheit 21,einen Systemspeicher 22 und einen Systembus 23 beinhaltet,welcher verschiedene System-komponenten einschließlich desSystemspeichers 22 mit der Verarbeitungseinheit 21 koppelt.Der Systembus 23 kann einer von mehreren Arten von Busaufbautenein-schließlicheines Speicherbusses oder einer Speicher-steuerung, eines peripherenBusses und eines lokalen Busses sein, der jede beliebige einer Vielfaltvon Busarchitekturen verwendet. Der Systemspeicher 22 kannei-nen Nurlesespeicher (ROM) 24 und einen Direktzugriffs-speicher(RAM) 25 beinhalten. Ein Eingabe/Ausgabe-Grundsystem (BIOS) 26,das die Grundprogramme enthält,welche helfen, Informationen wie etwa während des Hoch-fahrens zwischenElementen innerhalb des Computers 20 zu übertragen,ist im ROM 24 gespeichert. Der Computer 20 beinhaltetferner ein Festplattenlaufwerk 27 zum Le-sen von einerund Schreiben auf eine nicht gezeigte Festplatte, ein Magnetplattenlaufwerk 28 zumLesen von einer oder Schreiben auf eine entfernbare Magnetplatte 29,und ein CD-Laufwerk 30 zum Lesen von einer oder Schreibenauf eine entfernbare optische Platte 31 wie etwa eine CD-ROModer andere optische Medien. Eine Softwareanwendung unter Prüfung kannentweder überdas Festplattenlaufwerk 27, das Magnetplattenlaufwerk 28 oderdas CD-Laufwerk 30 in den Systemspeicher 22 gela-denwerden. Das Festplattenlaufwerk 27, das Magnetplat-tenlaufwerk 28 unddas CD-Laufwerk 30 sind durch eine Festplattenlaufwerkschnittstelle 32,eine Magnetplattenlaufwerkschnittstelle 33 bzw. eine CD-Laufwerkschnittstellemit dem Systembus 23 verbunden. Die Laufwerke und ihrezugehörigen computerlesbarenMe-dien stellen eine nichtflüchtigeSpeicherung von compu-terlesbaren Befehlen, Datenstrukturen, Programm-Modulenund anderen Daten fürden Computer 20 bereit. Obwohl die hierin beschriebenebeispielhafte Umgebung eine Festplatte, eine entfernbare Magnetplatte 29 undeine entfernbare optische Platte 31 einsetzt, wird derFach-mann verstehen, dass andere Arten von computerlesbaren Medien,die Daten speichern können,auf die von einem Computer zugegriffen werden kann, wie etwa Magnetkas-setten, Flash-Speicherkarten,digitale Videoplatten, Bernoulli-Kassetten, Direktzugriffsspeicher(RAMs), Nurlesespeicher (ROMs) und dergleichen ebenfalls in derbeispielhaften Betriebsumgebung verwendet werden kön-nen.Referring to 1 includes an exemplary data processing device for executing the one embodiment, a general purpose computing device in the form of a conventional computer 20 which is a processing unit 21 , a system memory 22 and a system bus 23 which includes various system components including system memory 22 with the processing unit 21 coupled. The system bus 23 can be one of several types of bus configurations including a memory bus or controller, a peripheral bus, and a local bus using any of a variety of bus architectures. The system memory 22 can read-only memory (ROM) 24 and a random access memory (RAM) 25 include. A basic input / output system (BIOS) 26 , which contains the basic programs that help information such as during startup between elements within the computer 20 to be transferred is in ROM 24 saved. The computer 20 also includes a hard drive 27 for reading from and writing to a hard drive, not shown, a magnetic disk drive 28 for reading from or writing to a removable magnetic disk 29 , and a CD drive 30 for reading from or writing to a removable optical disc 31 such as a CD-ROM or other optical media. A software application under review can either be on the hard drive 27 , the magnetic disk drive 28 or the CD drive 30 into system memory 22 Loading. The hard drive 27 , the magnetic disk drive 28 and the CD drive 30 are through a hard drive interface 32 , a magnetic disk drive interface 33 or a CD drive interface with the system bus 23 connected. The drives and their associated computer-readable media provide non-volatile storage of computer-readable commands, data structures, program modules and other data for the computer 20 ready. Although the exemplary environment described herein is a hard drive, a removable magnetic disk 29 and a removable optical disc 31 , those skilled in the art will understand that other types of computer-readable media that can store data that can be accessed by a computer, such as magnetic cartridges, flash memory cards, digital video disks, Bernoulli cartridges, random access memories (RAMs ), Read only memories (ROMs) and the like can also be used in the exemplary operating environment. [0033] EineAnzahl von Programm-Modulen einschließlich eines Betriebssystems 35,eines oder mehrerer Anwendungsprogramme 36, anderer Programm-Module 37 undProgrammdaten 38 kann auf der Festplatte, der Magnetplatte 29,der optischen Platte 31, im ROM 24 oder im RAM 25 gespeichertwerden. Die Anwendungsprogramme 36 können die Software für die Anwendungunter Prüfungbeinhalten. Ferner könnendie anderen Programm-Module 37 die Software für die Prüfungsskripte,die verwendet werden, um die Prüfautomatisierungauszuführen,beinhalten. Darüberhinaus könnendie Programmdaten 38 Daten beinhalten, die für die Prüfungsskripteerforderlich sind, um die Prüfautomatisierungauszuführen,wie etwa Daten, um den Betrieb der Anwendung unter Prüfung zusimulieren.A number of program modules including an operating system 35 , one or more application programs 36 , other program modules 37 and program data 38 can on the hard drive, the magnetic disk 29 , the optical disc 31 , in ROM 24 or in RAM 25 get saved. The application programs 36 may include software for testing under use. Furthermore, the other program modules 37 the software for the test scripts that are used to perform test automation. In addition, the program data 38 Include data that is required by the test scripts to perform test automation, such as data to simulate the operation of the application under test. [0034] EinBenutzer kann durch Eingabevorrichtungen wie etwa eine Tastatur 40 undeine Maus 42 Befehle und Informationen in den Computer 20 eingeben.Zum Beispiel kann der Benutzer die Tastatur 40 benutzen, umdie Prüfungsskriptsoftwareauszuführen,um die Anwendung unter Prüfungzu prüfen.Andere Eingabevorrichtungen (nicht gezeigt) können ein Mikrophon, einen Joystick,ein Gamepad, eine Satellitenschüssel,einen Scanner usw. beinhalten. Diese und andere Eingabevorrichtungensind häufigdurch eine serielle Schnittstelle 46, die mit dem Systembus 23 gekoppeltist, mit der Verarbeitungseinheit 21 verbunden, können jedochdurch andere Schnittstellen wie etwa einen parallelen Anschluß, einenSpie-lanschluß odereinen universellen Serienbus (USB) ge-sammelt werden. Ein Monitor 47 odereine andere Art von Anzeigevorrichtung kann ebenfalls über eineSchnitt-stelle wie etwa einen Videoadapter 48 mit dem Systembus 23 verbundensein. Zusätzlich zumMonitor 47 beinhalten Computer typischerweise andere periphereAusgabevor-richtungen (nicht gezeigt) wie etwa Lautsprecher undDrucker.A user can use input devices such as a keyboard 40 and a mouse 42 Commands and information in the computer 20 enter. For example, the user can use the keyboard 40 use to run the exam script software to test the application under test. Other input devices (not shown) may include a microphone, joystick, gamepad, satellite dish, scanner, etc. These and other input devices are often through a serial interface 46 that with the system bus 23 is coupled to the processing unit 21 connected, but can be collected by other interfaces such as a parallel connection, a game connection or a universal serial bus (USB). A monitor 47 or another type of display device may also interface such as a video adapter 48 with the system bus 23 be connected. In addition to the monitor 47 Computers typically include other peripheral output devices (not shown) such as speakers and printers. [0035] DerComputer 20 kann ferner eine Anwendungshardwareschnittstelle 55 beinhalten.Die Anwendungshardwareschnittstelle 55 ermöglicht einenAnschluß aneine Hardware 56 mit der Anwendung unter Prüfung aufeiner Hardwareebene. Wie oben besprochen kann die Anwendung unterPrüfungeinen Hardwareaspekt beinhalten. Die Anwendungshardwareschnittstellestellt die Eingangssignale und Ausgangssignale bereit, die für die Simulationwährenddes Prüfenserforderlich sind. Zum Beispiel kann die Hardware 56 für die Anwendungunter PrüfungSensoren beinhalten oder sensorische Eingangssignale benötigen. Indiesem Fall kann die Anwendungshardwareschnittstelle 55 diesesEingangssignal bereitstellen und über Sensoren 57 jedwedeAusgangssignale erhalten, um die tatsächliche Umgebung der Anwendungunter Prüfungzu simulieren. Zusätzlichkann die Hardware 56 fürdie Anwendung unter PrüfungMotoren 58 beinhalten. Die Eingangssignale und Ausgangssignalefür dieMotoren können über dieAnwendungshardwareschnittstelle 55 zum Computer gesendetwerden. In einer Ausführungsformhandelt es sich bei der Hardware 56 um Vorrichtungen für Röntgen, Compu tertomographie,Magnetresonanz, Ultraschall oder andere Abbildungssysteme.The computer 20 can also be an application hardware interface 55 include. The application hardware interface 55 enables connection to a hardware 56 with the application under testing at a hardware level. As discussed above, the application under test can include a hardware aspect. The application hardware interface provides the input signals and output signals that are required for simulation during testing. For example, the hardware 56 for the An include sensors or require sensory input signals. In this case, the application hardware interface 55 provide this input signal and via sensors 57 receive any output signals to simulate the actual environment of the application under test. In addition, the hardware 56 for use under engine testing 58 include. The input signals and output signals for the motors can be through the application hardware interface 55 sent to the computer. In one embodiment, the hardware 56 to devices for X-ray, computed tomography, magnetic resonance, ultrasound or other imaging systems. [0036] DerComputer 20 kann unter Verwendung logischer Verbindungenmit einer oder mehreren Netzwerkgeräte wie etwa einer Netzwerkgerät 49 ineiner vernetzten Umgebung tä-tigsein. Die Netzwerkgerät 49 kann einanderer Compu-ter, ein Server, ein Router, ein Netzwerkpersonalcomputer,eine Partnervorrichtung oder ein anderer gewöhnlicher Netzwerkknoten seinund beinhaltet typischerweise viele oder alle der oben in Bezug aufden Computer 20 beschriebenen Elemente. Die in 1 dargestellten logischenVerbindungen beinhalten ein lokales Netz 51 und ein Fernnetz 52.Zusätzlichkann die Netzwerkgerät 49 eineVorrichtung umfassen, die die Hardware- und/oder Software-Funktionalität verknüpft. DasNetzwerkgerät 49 kanneine Vielfalt von Vorrichtun-gen wie etwa medizinische VorrichtungeneinschließlichComputerradiographiegeräte;Computertomographie(CT)geräte;digitale Röntgengeräte; Mammographiegeräte, Magnetresonanzqeräte; Geräte der Nuklearmedizin;Positronenemissionstomographie(PET)geräte; Strahlentherapie(RT)geräte; Ultraschallgeräte; Röntgenangiographiegeräte; Röntgenfluoroskopie(XRF)geräte; urologischeGeräte,chirurgische Geräte;und Intensivpflegegeräte(wie etwa die Überwachungam Krankenbett) umfassen. Der Computer 20 kann somit mit Netz-werkgeräten wechselwirken.Als ein Beispiel kann die Anwendung am Computer 20 ausgeführt werden undmit einem entfernt angeordneten Scanner wechselwirken. Die Anwendungkann somit Daten von dem entfernt angeordne-ten Scanner erhaltenund den Scanner auch steuern (wie etwa durch Beginnen und Anhalten vonScans eines Pati-enten). Derartige Netzwerkbetriebsumgebungen sindin Büros,unternehmensweiten Computernetzen, Intranetzen und dem Internetalltäglich.The computer 20 can use logical connections with one or more network devices such as a network device 49 work in a networked environment. The network device 49 may be another computer, server, router, network personal computer, partner device, or other common network node and typically includes many or all of the above with respect to the computer 20 described elements. In the 1 The logical connections shown include a local network 51 and a long distance network 52 , In addition, the network device 49 comprise a device that links the hardware and / or software functionality. The network device 49 can be a variety of devices such as medical devices including computed radiography equipment; Computed tomography (CT) device; digital x-ray machines; Mammography devices, magnetic resonance devices; Nuclear medicine devices; Positron emission tomography (PET) devices; Radiotherapy (RT) device; Ultrasound equipment; X-ray angiography devices; X-ray fluoroscopy (XRF) apparatus; urological devices, surgical devices; and intensive care devices (such as bedside surveillance). The computer 20 can thus interact with network devices. As an example, the application on the computer 20 be executed and interact with a remotely located scanner. The application can thus receive data from the remotely located scanner and also control the scanner (such as by starting and stopping a patient's scans). Such network operating environments are commonplace in offices, company-wide computer networks, intranets and the Internet. [0037] Beider Verwendung in einer LAN-Netzwerkbetriebsumgebung ist der Computer 20 durcheine Netzwerkschnittstelle oder einen Adapter 53 mit demlokalen Netz 51 verbunden. Bei der Verwendung in einerWeitverkehrsnetz-Netzwerkbetriebsumgebung bein haltet der Computer 20 typischerweiseein Modem 54 oder ein anderes Mittel zum Herstellen vonKommunikationen überdas Fernnetz 52 wie etwa das Internet. Das Modem 54,das intern oder extern sein kann, ist über die serielle Schnittstelle 46 mitdem Systembus 23 verbunden. In einer NetzwerkbetriebsumgebungkönnenProgramm-Module, die in Bezug auf den Computer 20 dargestellt sind,oder Abschnitte da-von, in der Fernspeichervorrichtung gespeichertwerden. Man wird verstehen, dass die gezeigten Netzwerkverbin-dungenbeispielhaft sind und andere Mittel zum Herstel-len einer Kommunikationsverbindungzwischen den Compu-tern verwendet werden können.When used in a LAN network operating environment, the computer is 20 through a network interface or an adapter 53 with the local network 51 connected. The computer includes when used in a wide area network operating environment 20 typically a modem 54 or other means of establishing communications over the long distance network 52 like the internet. The modem 54 which can be internal or external is through the serial interface 46 with the system bus 23 connected. In a network operating environment, program modules that are related to the computer 20 or portions thereof are stored in the remote storage device. It will be understood that the network connections shown are exemplary and other means of establishing a communication link between the computers can be used. [0038] Umdie Prüfsoftwarebesser auszuführen,werden die Zuständeder Automatisierungssoftware analysiert. 2 zeigt ein Ablaufdiagramm möglicherZuständebeim Prüfeneiner Anwendung. Diese Zuständesind nur zu Veranschaulichungszwecken beschrieben und sind für die Zustände in einemSoftwareautomatisierungssystem nicht erschöpfend. Ferner sind die Zustände in einembestimmten Prüfautomatisierungskontext beschrieben,worin eine typische Prüfabfolgedurch drei unterschiedliche Stufen, die Vorbedingung, das Prüfungsskriptund die Nachbedingung, voranschreitet. Erneut dienen diese Stufendes Prüfensnur Veranschaulichungszwecken. Weniger, mehr oder unterschiedlicheStufen des Prüfenskönnenverwendet werden.In order to run the test software better, the states of the automation software are analyzed. 2 shows a flowchart of possible states when testing an application. These states are described for illustrative purposes only and are not exhaustive of the states in a software automation system. The states are also described in a specific test automation context, in which a typical test sequence proceeds through three different stages, the precondition, the test script and the postcondition. Again, these stages of testing are for illustration purposes only. Fewer, more or different levels of testing can be used. [0039] DieVorbedingungsstufe beschreibt die Bedingung(en), die erfüllt werdensollte(n), bevor eine bestimmte Prüfung ausgeführt wird. Als nur ein Beispielkann die Vorbedingung dann, wenn es sich bei der bestimmten Prüfung umein Analysieren einer Magnetresonanz(MR)abbildung für einenPatienten handelt, sein, die Magnetresonanzabbildung für den Patientenin einen Speicherplatz zu laden, auf den durch die Prüfautomatisierungssoftwarezugegriffen werden kann. Die Prüfungsskriptstufeist die Ausführungder Prüfung.Beim Magnetresonanz-Beispielist die Prüfungsskriptstufedie Analyse der bestimmten MR-Abbildung, die vorher in der Vorbedingungsstufegeladen wurde. Schließlichbeschreibt die Nachbedingungsstufe die Bedingung(en), die vor demAusführeneiner anderen Prüfungsabfolgedurchgeführtwerden sollte(n). Tatsächlichist die Nachbedingungsstufe eine "Bereinigungs"stufe, um das System vor dem Ausführen dernächstenPrüfungzu bereinigen. Beim Magnetreso-nanz-Beispiel kann die Nachbedingungsstufeden vorher durch die Vorbedingungsstufe beschriebenen Speicherplatz überschreiben.Die Nachbedingungsstufe kann unnö-tigsein, wenn das System nach dem Ausführen des Prü-fungsskripts eine andere Prüfung ausführen kann(sich, wie nachstehend beschrieben, in der Systemvoreinstel-lungbefindet).ThePrerequisite level describes the condition (s) that are metshould (s) before performing a particular test. As an examplecan be the precondition if the particular test isanalyzing a magnetic resonance (MR) image for aPatient is, the magnetic resonance imaging for the patientin a memory location on the by the test automation softwarecan be accessed. The exam script levelis the executionThe examination.In the magnetic resonance exampleis the exam script levelthe analysis of the determined MR image that was previously in the precondition levelwas loaded. Finallythe post-condition level describes the condition (s) that preceded theTo runanother test sequencecarried outshould be. IndeedThe post-condition level is a "cleanup" level to the system before running thenextexamto clean. In the magnetic resonance example, the post-condition level canoverwrite the space previously described by the precondition level.The postcondition level may be unnecessaryif the system can run another check after executing the check script(as described below in the system defaultlocated). [0040] Tabelle1 beschreibt die in 2 vorhandenenZustandsübergänge.Table 1 describes the in 2 existing state transitions. [0041] Wiein 2 gezeigt beinhaltetder Zustand des Systems einen systemunbekannten Zustand. Der systemunbekannteZustand kann einen Zustand beinhalten, der nach dem Neuhochfahrennicht erreicht werden kann. Aus Gründen der Einfachheit der Veranschaulichungzeigt 2 nur einen systemunbekanntenZustand, in den überein unvorhersehbares Anwendungsverhalten auf eine Vielfalt von Weiseneingetreten werden kann. Die Zustände im System können mehrals einen unbekannten Zustand umfas-sen. Zum Beispiel kann jedesunvorhersehbare Anwendungsverhalten zu einem unterschiedlichen unbekanntenZustand führen. Zusätzlich istaus Gründender Einfach-heit der Veranschaulichung nur eine Vorbedingungs-Prüfungsskript-Nachbedingungs-Abfolgegezeigt. Zusätz-licheAbfolgen könnenanalysiert werden.As in 2 shown the state of the system includes a state unknown to the system. The system unknown state may include a state that cannot be reached after restarting. For the sake of simplicity of illustration shows 2 only a state unknown to the system that can be entered in a variety of ways through unpredictable application behavior. The states in the system can include more than one unknown state. For example, any unpredictable application behavior can lead to a different unknown state. In addition, for the sake of simplicity of illustration, only a precondition check script postcondition sequence is shown. Additional sequences can be analyzed. [0042] DieZuständeder Prüfautomatisierungkönnenauf eine Vielfalt von Weisen beschrieben werden. Eine Weise ist,einen bestimmten Zustand der Prüfautomatisierungals aus einer Anzahl von Aspekten bestehend zu beschreiben. EinAspekt ist ein Unterzustand, der einzeln als eine Funktion beschriebenwerden kann. Ein greifbarer Zustand kann zum Beispiel der DatenbankinhaltAdb sein. Andere Beispiele fürAspekte könnenden gegenwärtigenBenutzer (z.B. eingeloggter gegenwärtiger Benutzer), die gegenwärtigen Benutzerrechte(z.B. Sicherheitszugang des gegenwärtigen Benutzers), den Benutzerschnittstellen(UI)-Aspekt(z.B. Nachrichtenbox offen, Dialogfenster), die Benutzerkonfiguration(z.B. Einstellungen füreinen bestimmten Benutzer oder einen Satz von Benutzern), die Ortskonfiguration(z.B. Konfiguration füreine bestimmte Arbeitsstation) usw. beinhalten. Andere Aspekte können aufgenommenwerden, um den Zustand des Systems zu beschreiben. Das nachstehendbeschriebene Beispiel bespricht nachstehend einige Beispiele für dieseAspekte ausführlich. Zusammengefaßt ergebenalle Aspekte die Zustandsgleichung M = Adb +ABenutzerKonfig + AOrtsKonfig + Agegenwärt.Benutzer + ABenutzerVorrechte+... The states of the test automation can be described in a variety of ways. One way is to describe a particular state of test automation as consisting of a number of aspects. One aspect is a substate that can be described individually as a function. A tangible state can be the database content Adb, for example. Other examples of aspects may include the current user (e.g. logged in current user), the current user rights (e.g. Security access of the current user), the user interface (UI) aspect (e.g. message box open, dialog window), the user configuration (e.g. settings for a specific user or a set of users), the location configuration (e.g. configuration for a specific workstation) etc. , Other aspects can be included to describe the state of the system. The example described below details some examples of these aspects below. In summary, all aspects result in the equation of state M = Adb + ABuserConfig + AOrtsKonfig + Present.user + ABuser Privileges + ... [0043] DerZustand M ist wie im Folgenden gezeigt als eine Summe von unabhängigen Aspektzustandsfunktionenbeschrieben: M = M(db, BenutzerKonfig, OrtsKonfig, gegenwärt.Benutzer,BenutzerVorrechte, ...)State M is described as a sum of independent aspect state functions as shown below: M = M (db, user config, location config, current user, user privileges, ...) [0044] Ineiner Ausführungsformkönnendie Aspekte als Funktionen beschrieben werden. Ein konkreter Wert dieserFunktion kann definiert werden. Zum Beispiel kann im Datenbankaspekt(db) ein konkreter Wert fürdiese Funktion sein, dass ein bestimmter Patient (Patient Xyz) nichtin der Datenbank vorhanden ist, AdbXyz nicht gefunden. Daher kannder Aspekt fürdie Datenbank durch eine Vielfalt von Funktionen wie etwa Adb = ⎕Patienten(Adbi)definiert werden, wobei A durch den genauen Aufbau der Dateneinträge einesPatienten definiert ist. Als solche kann die Definition und dieVerfeinerung der Aspektfuntionen auf eine Unzahl von Weisen durchgeführt werden.Inone embodimentcanthe aspects are described as functions. A concrete value of thisFunction can be defined. For example, in the database aspect(db) a concrete value forthis feature may be that a particular patient (patient Xyz) is notexists in the database, AdbXyz not found. Thereforethe aspect forthe database through a variety of functions such as Adb = ⎕patients (Adbi)can be defined, where A is the exact structure of the data entries of aPatient is defined. As such, the definition and theRefinement of the aspect functions can be done in a myriad of ways. [0045] DieAspekte, die die Zustandsgleichung definieren, können zueinander orthogonalsein. Veränderungenin den Aspekten führenzu einer Veränderungim Zustand, wobei der Zustand des Systems durch Ändern der Aspekte einzeln undvoneinander unabhängigverändertwird. Darüberhinaus kann eine Änderungin einem Aspekt diskret durchgeführtwerden. Im Besonderen kann eine Veränderung bei einem Aspekt hergestellt werden,wobei andere Aspekte, die den Zustand definieren, unbeeinflußt sind.Dies steht im Gegensatz zu einem erzwungenen Neustart des Systems,dessen Veränderungenvoneinander abhängigsind und zu einem Verändernvon Teilen des Systems, die korrekt tätig sind, zusammen mit anderen,eine Abänderungerfordernden Teilen des Systems führen. Somit führen dieseeinzelnen, diskreten und unabhängigen Änderungenvon Aspekten zu orthogonalen Übergängen desSystemzustands. Währenddie Aspekte als voneinander unabhängig definiert sind, wird dernormale Betrieb der Prüfsoftwarewahrscheinlich möglicheAspektveränderungenim gegenwärtigenWert von anderen Aspektfunktionen beschränken. Eine medizinische Abbildungsanwendung, beispielsweise,kann Aspekte beinhalten, die in der Praxis zueinander in Beziehungstehen. Zum Beispiel kann der Aspekt der Benutzervorrechte nichtvom Datenbankaspekt (z.B. dem Datenbankinhalt) abhängen. Dernormale Betrieb der medizinischen Abbildungsvorrichtung beschränkt jedochdie Werte von manchen dieser Aspekte einschließlich des Datenbankinhalts,der von den Benutzervorrechten abhängt. Daher können dieAspekte in der Praxis verbunden sein, wodurch einige der Veränderungenan den Aspekten beschränktwerden. Diese Veränderungenwerden nachstehend ausführlicherbesprochen werden.TheAspects that define the equation of state can be orthogonal to each otherhis. changeslead in the aspectsto a changein the state, the state of the system by changing the aspects individually andindependent of each otherchangedbecomes. About thatin addition, a changedone discretely in one aspectbecome. In particular, a change can be made in one aspectother aspects that define the state are unaffected.This is in contrast to a forced system restart,its changesinterdependentare and to a changeparts of the system that are operating correctly with others,a changerequired parts of the system. So these leadindividual, discrete and independent changesfrom aspects to orthogonal transitions of theSystem health. Whilethe aspects are defined as independent of each other, thenormal operation of the test softwareprobably possibleaspect changesin the presentLimit the value of other aspect functions. A medical imaging application, for example,may include aspects that are related to each other in practicestand. For example, the aspect of user privileges cannotdepend on the database aspect (e.g. the database content). Thehowever, normal operation of the medical imaging device is limitedthe values of some of these aspects including the database content,which depends on user privileges. Therefore, theAspects linked in practice, making some of the changeslimited in aspectsbecome. These changesare discussed in more detail belowbe discussed. [0046] Wieoben besprochen kann ein Aspekt einzeln, diskret und/oder von anderenAspekten unabhängig änderbarsein. Die Gestaltung der Anwendung unter Prüfung kann die einzelne undunabhängige Änderbarkeit derAspekte erleichtern. Die Anwendung unter Prüfung kann als eine Serie vonKomponenten mit Schnittstellen fürjede der Komponenten gestaltet sein. Den Komponenten können Aspektezugewiesen werden, was die unabhängigeund einzelne Veränderungeiner jeden der Komponenten überdie Schnittstellen gestattet. Ein Beispiel davon kann für eine medizinischeAbbildungsanwendung sein, die eine Datenbank und eine Datenbankschreibschnittstellebein-haltet, die von den anderen Komponenten im System ge-sonderteinzelne und unabhängigeVeränderungenan der Datenbank gestattet. Auf diese Weise läuft die Veränderung am Datenbankaspektauf einen orthogonalen Übergangdes Systemzustands hinaus.HowOne aspect may be discussed individually, discreetly and / or by othersAspects can be changed independentlyhis. The design of the application under examination can be individual andindependent changeability of theFacilitate aspects. The application under test can be considered a series ofComponents with interfaces foreach of the components should be designed. The components can have aspectsbe assigned what the independentand individual changeeach of the components overthe interfaces allowed. An example of this can be for a medicalImaging application that have a database and a database write interfacecontains that which is separated from the other components in the systemindividual and independentchangesallowed on the database. In this way, the change to the database aspect runsto an orthogonal transitionof the system state. [0047] Wieoben gezeigt ist die Zustandsgleichung M mit angehängten Leerstellendefiniert. Die angehängten Leerstellengeben an, dass es weitere Aspekte geben kann, die nicht formuliertoder nicht bekannt sind. Diese weiteren Aspekte sind unberücksichtigteAspekte. Eine richtige Definition von Aspekten kann jedoch nachwie vor eine stabile, auf Aspekten beruhende Wiederherstellung gestatten,wenn Veränderungenin Aspekten unabhängigoder orthogonal zueinander sind. Man betrachte als nur ein Beispieldie folgenden Aspekte: Sicherheit, einge loggter Benutzer, Datenbankbestand.Die Aspekte der Sicherheit und des eingeloggten Benutzers sind voneinem Systemgesichtspunkt her definiert und können über Befehlszeilenschnittstellenzugänglich sein.Der Aspekt des Datenbankbestands ist als das definiert, was für den gegenwärtigen Benutzerin der Patientendurchsichts-Unteranwendung sichtbar ist (Benutzergesichtspunkt).Falls ein Datensatz geschütztist, ist er fürden gegenwärtigenBenutzer nicht sichtbar. Wenn der Schutz für den Datensatz durch eineBefehlszeilenschnittstelle beseitigt wird, ist der Übergangfür denAspekt des eingeloggten Benutzers und den Aspekt der Sicherheitorthogonal. Anhang A führtein Werkzeug auf, das in VBScript oder Jscript geschrieben seinkann, um den Zustand zu bestimmen und den Zustand des Aspekts derSicherheit wiederzuerlangen. In der Patientendurchsichts-Unteranwendungwird der vorher verborgene Datensatz jedoch sichtbar werden, sodass für denAspekt des Datenbankbestands eine Abhängigkeit und ein nichtorthogonaler Übergangbesteht.As shown above, the equation of state M is defined with empty spaces attached. The blank spaces appended indicate that there may be other aspects that are not formulated or not known. These other aspects are disregarded aspects. However, correct definition of aspects can still allow stable, aspect-based restoration if changes in aspects are independent or orthogonal to each other. Consider the following aspects as just one example: security, logged in user, database inventory. The aspects of security and the logged in user are defined from a system point of view and can be accessed via command line interfaces. The database inventory aspect is defined as what is visible to the current user in the patient review sub-application (user point of view). If a record is protected, it is not visible to the current user. If protection for the record is removed through a command line interface, the transition is for the logged-in user aspect and the Orthogonal security. Appendix A lists a tool that can be written in VBScript or Jscript to determine the state and recover the state of the security aspect. In the patient review sub-application, however, the previously hidden data record will become visible, so that there is a dependency and a non-orthogonal transition for the aspect of the database inventory. [0048] EinGesichtspunkt dieser Ausführungsformist das Bestimmen des Zustands der Anwendung unter Prüfung und,falls sich die Anwendung unter Prüfung nicht in einem erwartetenZustand befindet, ein automatisches Verändern des Zustands der Anwendungunter Prüfungzum erwarteten Zustand oder zu einem anderen Zustand. Diese Bestimmungdes Zustands des Systems kann fürjeden beliebigen Zustand des Systems durchgeführt werden. Ferner kann dieBestimmung der Zuständevom Prüfprogrammabhängenoder vom Prüfprogrammunabhängigsein. Zum Beispiel kann die Überprüfung hinsichtlichdes Systemvoreinstellungszustands, in den nach dem Hochfahren desSystems eingetreten wird, vom gewählten Prüfprogramm unabhängig sein.OnAspect of this embodimentis determining the state of the application under testing and,if the application under examination is not in an expectedState, an automatic change in the state of the applicationunder examinationto the expected state or to another state. This provisionthe state of the system can forany state of the system. Furthermore, theDetermination of the statesfrom the test programdependor from the test programindependentlyhis. For example, the review regardingthe system default state in which after booting theSystem will be independent of the selected test program. [0049] Jederder Aspekte fürden Systemvoreinstellungszustand kann eine generische Überprüfung umfassen,um zu bestimmen, ob sich der besondere Aspekt im Systemvor-einstellungszustandbefindet. Zum Beispiel weist ein Aspektobjekt einen während seinesAufbaus festgesetzten fixen Teil auf, der die Bezeich nung des Aspekts,die zugehörigeSystemvoreinstellung und die zugehörige Wie-derherstellung beinhaltenkann. Jene Zustände,die nicht vom Prüfprogrammabhängen,könnenals fürden Betrieb des Systems generisch bezeichnet werden. Die generischenZuständegestatten den Vergleich der Werte der Aspekte des Systems mit Wertender Aspekte fürdie generischen Zustände.Andere nichtgenerische Zuständekönnen Überprüfungen erfordern,die fürdas Prüfpro-grammspezifisch sind. Diese nichtgenerischen oder dy-namischen Zustände unterstützen einendynamischen Teil fürdas Aspektobjekt, der sich gemäß der Prüfung (Vor-bedingung, Vorbedingungsnachprüfung undNachbedingung) verändert.Everyoneof aspects forthe system default state can include a generic check,to determine if the particular aspect is in the system default statelocated. For example, an aspect object has one during itsStructure fixed part, which is the designation of the aspect,the associatedSystem default and the associated restore includecan. Those conditionswhich are not from the test programdepend,canas forthe operation of the system can be described generically. The genericconditionsallow the values of the aspects of the system to be compared with valuesof aspects forthe generic states.Other non-generic conditionsmay require reviewsthe forthe test programare specific. These non-generic or dynamic states support youdynamic part forthe aspect object that is in accordance with the check (precondition, precondition check andPostcondition) changed. [0050] DergegenwärtigeZustand der Anwendung unter Prüfungkann durch Untersuchen der Aspekte wie etwa durch einen Vergleichder Aspekte des gegenwärtigenZustands mit Aspekten eines bekannten Zustands wie etwa der System-voreinstellungbestimmt werden. Wenn auf Basis des Ver-gleichs bestimmt wird, dass sichder gegenwärtigeZu-stand nicht im erwarteten Zustand befindet, befindet sich dasSystem in einem unbekannten oder unerwünschten Zustand. In diesemFall könnendie dem Zustand zugehö-rigenAspekte verändertwerden, um den Zustand des Sys-tems zu verändern. Die auf Aspekten basierendeWiederherstellung kann, wie nachstehend ausführlicher bespro-chen wird,in jedem beliebigen Betriebszustand des Sys-tems ausgeführt werden,wie etwa von der Systemvorein-stellung zu übergeordneten Zuständen, zurVorbedingung, zur Nachbedingung. Typischerweise kann jeder Aspektei-ne Wiederherstellung zu einem bekannten Zustand wie et-wa demSystemvoreinstellungszustand aufweisen. In einer Ausführungsformbesteht die auf Aspekten basierende Wiederherstellung aus dem Abändern vonAspekten des Zu-stands des Systems zu Aspekten eines bekannten Zustands(wie etwa des Systemvoreinstellungszustands). Optional kann einezusätzlicheReinigung des Systems ausgeführtwerden.ThecurrentCondition of the application under examinationcan by examining the aspects such as through a comparisonthe aspects of the presentState with aspects of a known state such as the system defaultbe determined. If it is determined on the basis of the comparison thatthe current oneThe condition is not in the expected stateSystem in an unknown or unwanted state. In thisCase canthat belong to the stateAspects changedto change the state of the system. The aspect basedRecovery, as discussed in more detail below,be executed in any operating state of the system,such as from the system default to superordinate states, toPrecondition, for postcondition. Typically, every aspecta restoration to a known state like somethingSystem default state. In one embodimentAspect based restoration consists of modifyingAspects of the state of the system to aspects of a known state(such as the system default state). Optionally, oneadditionalSystem cleaning donebecome. [0051] DasVeränderndes Zustands gestattet ein rasches und leistungsfähiges Wiederherstellungssystem. Andernfallskann das System unter Prüfungim unerwarteten oder unbekannten Zustand verbleiben, wodurch Prüfzeit verschwendetwird, oder möglicherweiseeinen Neustart, ein Neuhochfahren oder eine Neuinstallation erfordern,um mit dem Prüfendes Systems fortzufahren. Zum Beispiel unterscheidet sich die vorliegendeErfindung vom Neuhochfahren, das, wie im obigen Abschnitt "Allgemeiner Standder Technik" besprochenein Brute Force Wiederherstellungsverfahren ist. Das Neuhochfahrenkann das gesamte System verändern,ohne Kontrolle darüber,wel-che Abschnitte des Systems abgeändert sein können. ImGegensatz dazu kann die auf Aspekten basierende Wieder-herstellungwählen,welche Aspekte wiederhergestellt oder abgeändert werden können.TheChangethe state allows a fast and powerful recovery system. Otherwisecan the system under testremain in the unexpected or unknown state, wasting test timewill, or possiblyrequire a restart, reboot or reinstall,to start testingto continue the system. For example, the present differsInvention of rebooting, which, as in the above section "General statusof technology "discussedis a brute force recovery process. The rebootcan change the whole systemwithout control overwhich sections of the system can be modified. in theIn contrast, the aspect-based restoration canchoose,which aspects can be restored or changed. [0052] AlsAnalogie könnendas Neuhochfahren und die auf As-pekten basierende Wiederherstellungmit der Reinigung einer Tafel verglichen werden. Die Tafel kannan ver-schiedensten Stellen Geschriebenes aufweisen. Ein Neu-hochfahrenspült allesGeschriebene auf der Tafel fort und schreibt dann als Teil des Neuhochfahrinitialisie-rungsvorgangsan Abschnitten der Tafel neu. Im Gegen-satz dazu kann die auf Aspektenbasierende Wiederherstellung zuerst das Geschriebene auf der Tafelaufzeichnen (um den Zustand des Systems für eine spätere Analyse bereitzustellen),bestimmte Teile der Tafel auswählendund diskret löschen,ohne die gesamte Tafel sauber zu wischen, und die gereinigten Teileneu schreiben. Auf diese Weise kann die auf Aspekten basie-rendeWiederherstellung die Wiederherstellung des Sys-tems von einem unbekanntenZustand zu einem bekannten Zustand maßschneidern, ohne dass Teiledes Systems, die keiner Korrektur bedürfen, korrigiert werden, undohne dass unnötigZeit oder Betriebsmittel verschwendet wer-den.AsAnalogy canthe restart and the restoration based on aspectscan be compared to cleaning a blackboard. The board canhave written in various places. A new bootrinses everythingContinue writing on the board and then write as part of the new startup initialization processnew on sections of the board. In contrast, it can be based on aspectsbased restoration first the writing on the boardrecord (to make the state of the system available for later analysis)selecting certain parts of the boardand discreetly delete,without wiping the entire panel clean, and the cleaned partsrewrite. In this way, the aspect-basedRestore restoration of the system from an unknownCustomize condition to a known condition without partsof the system that do not need to be corrected, andwithout being unnecessaryTime or resources are wasted. [0053] EinBeispiel der Ersparnis bei der Verwendung der auf Aspekten basierendenWiederherstellung ist, dass die automatisierte, auf Aspekten basierendeWiederherstel-lung eine Minute pro Aspekt benötigen kann, während ei-nemanuelle Wiederherstellung so viel wie zehn Mal so lang brauchenkann. Eine Schätzung,dass 30 % aller Prüfungsskripteauf irgendeine Weise wiederhergestellt werden müssen, führt zu einer enormen Zeitersparnisbei der Verwendung der automatisierten Wiederherstellung.OnExample of savings when using aspect-basedRecovery is that automated, aspect-basedRecovery may take one minute per aspect while onemanual recovery as long as ten timescan. An estimate,that 30% of all exam scriptsHaving to be restored in some way saves a lot of timewhen using automated recovery. [0054] Eineandere Ausführungsformstellt Informationen hinsichtlich des Systems unter Prüfung bereit,wenn sich das System nicht in einem erwarteten Zustand befindet.Die bereitgestellten Informationen können Daten hinsichtlich eines,einiger oder aller Aspekte fürden unerwarteten Zustand beinhalten und können Daten hinsichtlich eines,einiger oder aller Aspekte fürden erwarteten Zustand beinhalten.Aother embodimentprovides information regarding the system under review,when the system is not in an expected state.The information provided can include data regarding asome or all aspects forinclude the unexpected condition and may contain data regarding asome or all aspects forinclude the expected condition. [0055] Bezugnehmendauf 3 ist ein Betriebsablaufdiagrammeiner Ausführungsformdes auf Aspekten basierenden Wiederherstellungssystems und -verfahrensgezeigt. Bezugnehmend auf 4 istein Klassendiagramm fürObjekte, die unter Verwendung einer objektorientierten Programmierungcodiert sind, in einem auf Aspekten basierenden Wiederherstellungssystemund -verfahren gezeigt. 5 bis 7 zeigen Ablaufdiagrammefür dasobjektorientierte Codieren in 4,wobei 5 ein Ablaufdiagrammzeigt, bei dem während desAusführenseiner Prüfungkein abnormales Verhalten festgestellt wird, 6 ein Ablaufdiagramm mit abnormalem Verhaltenund Wiederherstellung währendder Vorbedingung zeigt, und 7 einAblaufdiagramm mit abnormalem Verhalten und Wiederherstellung während derNachbedingung zeigt.Referring to 3 An operational flow diagram of one embodiment of the aspect-based recovery system and method is shown. Referring to 4 FIG. 4 is a class diagram for objects encoded using object oriented programming in an aspect based recovery system and method. 5 to 7 show flowcharts for object-oriented coding in 4 , in which 5 FIG. 2 shows a flowchart in which no abnormal behavior is detected during the execution of a test, 6 shows a flowchart of abnormal behavior and recovery during the precondition, and 7 shows a flowchart of abnormal behavior and recovery during post-condition. [0056] Wiein Block 68 gezeigt wird die Anwendung unter Prüfung eingeschaltet.Nach dem Einschalten wird wie in Block 69 gezeigt das Batchder Prüfabfolgengestartet. Das Batch der Prüfabfolgenkann durch die Bedienperson manuell gestartet werden, um die Anwendungunter Prü-fungzu prüfen.Bei der Vorbereitung zur Durchführungeiner Prüfabfolgewerden die Werte fürAspekte währendder Prüfabfolgeinitialisiert. Dies ist inAs in block 68 shown the application is switched on under examination. After switching on, as in block 69 shown the batch of test sequences started. The batch of the test sequences can be started manually by the operator in order to test the application under test. When preparing to run a test sequence, the values for aspects are initialized during the test sequence. This is in [0057] 5 ge-zeigt, welche die Skriptinitialisierungfür dieuniver-selle Schnittstellenprüfautomatisierung (UITA)für diein 4 gezeigten Objektezeigt. Zum Beispiel bein-haltet EinstellungZustandsDynamik wie in 4 und 5 gezeigt Werte für die Aspektbezeichnung (AspektNa-me_ein),die Aspektvorbedingung fürdie Prüfung(vorBe-ding_ein), die Grundlage, um nachzuprüfen, dass die Vorbedingungfür einenbestimmten Aspekt erfülltist (vorBedingNachprüf_ein),die Beschreibung der Vorbedin-gung (vorBedingBeschr_ein) und die Nachbedingungfür denAspekt, um zur Systemvoreinstellung zurückzukehren (nachBeding_ein).Nach dem Ausführendes Batchs tritt die Anwendung unter Prüfung in den wie in 2 ge-zeigten Systemvoreinstellungszustandein. Nach der Ini-tialisierung des Systems kann das System wie inBlock 70 gezeigt überprüft werden,um zu bestimmen, ob es sich im Voreinstellungszustand befindet. 5 shows which script initialization for the universal interface test automation (UITA) for the in 4 objects shown. For example, setting state dynamics includes as in 4 and 5 Shown are values for the aspect description (AspectNa-me_ein), the aspect precondition for the check (vorBe-ding_ein), the basis for verifying that the precondition for a certain aspect is met (vorBedingNachprüf_ein), the description of the precondition (vorBedingDeschr_ein) and the postcondition for the aspect to return to the system default (afterCondition_on). After the batch has been executed, the application enters the test as in 2 system default state. After the system has been initialized, the system can be used as in block 70 shown to determine if it is in the default state. [0058] Tabelle2 beschreibt beispielhafte Aspekte in einer medizinischen Abbildungsanwendung(z.B. Magnetresonanz, Ultraschall, Computertomographie, Röntgen odereine andere therapeutische oder diagnostische Abbildung) mit beispielhaftenWerten fürdie Systemvoreinstellung und die Wiederherstellung des beispielhaftenAspekts.table2 describes exemplary aspects in a medical imaging application(e.g. magnetic resonance, ultrasound, computed tomography, X-ray oranother therapeutic or diagnostic illustration) with exemplaryValues forthe system default and the restoration of the exemplaryAspect. [0059] Wiein Tabelle 2 gezeigt ist ein Aspekt die graphische Benutzeroberfläche (GUI).Im Systemvoreinstellungszustand sollte die GUI in keiner der Aufgabenkartenoffene Nachrichtenboxen oder Fenster beinhalten, sollten in keinerder Aufgabenkarten Patienten geladen sein, und sollte sich die Betrachteraufgabenkartevorne an der Anzeige befinden. Wie anschließend besprochen wird, werdendie gegenwärtigenAspekte des Systems mit den Aspekten des Voreinstellungssystemsverglichen. Wenn sich die Aspekte unterscheiden, können diegegenwärtigenAspekte zu den Voreinstellungsaspekten verändert werden. Wie in Tabelle2 gezeigt sind beispielhafte Veränderungender Aspekte gezeigt.Howshown in Table 2 is one aspect of the graphical user interface (GUI).In the system default state, the GUI should not be in any of the task cardsOpen message boxes or windows should not be in anythe patient task cards should be loaded, and should be the viewer task cardlocated on the front of the display. As will be discussed subsequentlythe currentAspects of the system with the aspects of the preset systemcompared. If the aspects differ, they cancurrentAspects to the default aspects are changed. As in tableExemplary changes are shown in FIGof the aspects shown. [0060] DieAnalyse zur Bestimmung, ob sich das System im Voreinstellungszustandbefindet, kann von Folgendem abhängen:(1) der Wahl der zu untersuchenden Aspekte; (2) der Art der Untersuchungder gewählten Aspekte;und/oder (3) der Abfolge der Untersuchung der Aspekte. Ein, einigeoder alle der Aspekte könnenzur Untersuchung gewähltwerden, um zu bestimmen, ob sich das System im Voreinstellungszustandbefindet. In einer Ausführungsformwerden alle Aspekte überprüft. In eineranderen Ausführungsformwerden nur wichtigere Aspekte fürden Betrieb des Systems untersucht.The analysis to determine if the system is in the default state can depend on: (1) the choice of aspects to be examined; (2) the way in which the selected aspects are examined; and / or (3) the sequence of examining the aspects. One, some, or all of the aspects can be selected for examination to determine if the system is in the default state. In In one embodiment, all aspects are checked. In another embodiment, only more important aspects for the operation of the system are examined. [0061] Fernerkann die Art der Untersuchung eines Aspekts, um nachzuprüfen, obsich das System im Voreinstellungszustand befindet, mehrere Formenannehmen, die Folgendes beinhalten: (1) eine Analyse eines Aspektsunabhängigoder abhängigvon anderen Aspekten im System; (2) eine Analyse eines Aspekts hinsichtlichbesonderer Daten; (3) eine Analyse eines Aspekts hinsichtlich allgemeinerParameter; (4) eine Analyse, um zu bestimmen, ob ein besondererVorfall aufgetreten ist. Typischerweise können die Aspekte unabhängig voneinanderanalysiert werden, um zu bestimmen, ob sie sich im Voreinstellungszustandbefinden. Eine unabhängigeUntersuchung von Aspekten kann unter Verwendung von Serien wie etwavon Installationsprogrammen, COM-Servern, Produktkomponentenprüf-APIs usw.durchgeführtwerden. Zum Beispiel kann eine Untersuchung der Datenbank, wennsich ein Aspekt auf eine Datenbankeintragung bezieht, durch Verwendungeiner Anwendungsprogrammschnittstelle (API), die eine direkte Untersuchungder Datenbank gestattet, unabhängigvon anderen Aspekten durchgeführtwerden.Furthercan be the way of examining an aspect to verify whetherthe system is in the default state, several formsthat include: (1) an analysis of an aspectindependentlyor dependentof other aspects in the system; (2) an analysis of an aspect regardingspecial dates; (3) an analysis of an aspect for generalParameter; (4) an analysis to determine if a particular oneIncident has occurred. Typically, the aspects can be independent of each otherbe analyzed to determine if they are in the default stateare located. An independent oneAspects can be examined using series such asof installation programs, COM servers, product component test APIs, etc.carried outbecome. For example, an examination of the database, ifone aspect relates to a database entry, through usean application program interface (API) that is a direct investigationthe database allowed, independentlyperformed by other aspectsbecome. [0062] AnhangB listet ein Werkzeug auf, das in VBScript oder Jscript geschriebensein kann, um den Zustand des Datenbankaspekts zu bestimmen. Alternativkönnendie Aspekte in einer Weise untersucht werden, die von anderen Aspektenim System abhängt,wie nachstehend ausführlicherbesprochen wird. Die Untersuchung eines Aspekts, um nachzuprüfen, obsich der Aspekt in der Systemvoreinstellung befindet, kann Folgendesumfassen: das Analysieren des Aspekts hinsichtlich besonderer Daten(wie etwa das Bestimmen, ob der bestimmte Patient in den RAM eingegebenworden war); das Analysieren des Aspekts hinsichtlich allgemeinerParameter (wie etwa das Bestimmen, ob die geladenen Daten alphanumerischenZeichen entsprechen); oder das Analysieren des Aspekts hinsichtlichdes Auftretens eines besonderen Vorfalls (wie etwa, ob eine Nachrichtenboxoffen ist). In Tabelle 2, beispielsweise, können Aspekte der GUI, der Datenbankund der Sicherheit analysiert werden. Was den Datenbankaspekt betrifft,kann die Datenbank untersucht werden, um zu bestimmen, ob die Datenbankund die Austauschablage leer sind.attachmentB lists a tool written in VBScript or Jscriptcan be used to determine the state of the database aspect. alternativecanthe aspects are examined in a way that is different from other aspectsdepends on the system,as detailed belowis discussed. Examining an aspect to verify thatthe aspect is in the system default, the following caninclude: analyzing the aspect for particular data(such as determining whether the particular patient is entered into RAMhad been); analyzing the aspect for more generalParameters (such as determining whether the loaded data is alphanumericCharacters correspond); or analyzing the aspect regardingthe occurrence of a special incident (such as whether a message boxis open). In Table 2, for example, aspects of the GUI, the databaseand security are analyzed. As for the database aspect,the database can be examined to determine if the databaseand the exchange tray is empty. [0063] Wenndas System wie in Block 70 gezeigt nicht als in der Systemvoreinstellungbefindlich verifiziert wird, kommt es wie in Block 82 gezeigtzum Eintritt in den Wiederherstellungsvorgang. Das System befindet sichnicht in der Systemvoreinstellung, wenn die Aspekte des gegenwärtigen Zustandsden Aspekten des Voreinstellungszustands nicht entsprechen. DieseBestimmung kann durch Vergleichen der Aspekte des gegenwärtigen Zustandsmit den Aspekten des Voreinstellungszustands durchgeführt werden.Der Wiederherstellungsvorgang wird nachstehend ausführlicherbesprochen. Alternativ wird, wenn das System wie in Block 70 gezeigtals in der Systemvoreinstellung befindlich verifiziert wird, wiein Block 71 gezeigt auf das nächste Prüfungsskript zugegriffen. Wiein Block 72 gezeigt werden dann die Vorbedingungen für das Prüfungsskripthergestellt. Zum Beispiel werden die Vorbedingungen wie in 5 gezeigt für zumindesteinige der Aspekte des Systems hergestellt, welches die Vorbedingungenausführt,um die Bedingungen fürdie Prüfungherzustellen.If the system as in block 70 shown is not verified as being in the system default, it comes as in block 82 shown to enter the recovery process. The system is not in the system default if the aspects of the current state do not correspond to the aspects of the default state. This determination can be made by comparing the aspects of the current state with the aspects of the preset state. The recovery process is discussed in more detail below. Alternatively, if the system is as in block 70 shown as being verified in the system default, as in block 71 shown accessed the next exam script. As in block 72 the prerequisites for the test script are then shown. For example, the preconditions are as in 5 shown for at least some of the aspects of the system that performs the prerequisites to establish the conditions for the test. [0064] Danachwird wie in Block 74 gezeigt bestimmt, ob die Vorbedingungenrichtig hergestellt wurden. Dieser Schritt kann ein Vorbedingungsnachprüfungsschrittsein, der eine Nachprüfungder erfolgreichen Herstellung der Vorbedingungen bereitstellt. Diesist in 5 als der Vorbedingungsnachprüfungsschrittgezeigt. Normalerweise wird keine Nachprüfung des Vorbedingungsschrittsdurchgeführt.Somit kann man vor dem Ausführendes Prüfungsskriptsnicht bestimmen, ob die der Prüfungvorausgehenden Bedingungen korrekt hergestellt wurden. Insbesondere,wenn das System entweder währendoder nach der Prüfungversagt, kann man unter früherenPrüfautomatisierungssystemennicht automatisch bestimmen, ob das Versagen auf den Vorbedingungsschrittoder auf den Prüfungsskriptschrittzurückzuführen war.Then it is like in block 74 shown determines whether the preconditions have been correctly established. This step can be a prerequisite verification step that provides verification of the successful establishment of the prerequisites. This is in 5 shown as the prerequisite check step. Normally, the precondition step is not checked. This means that it is not possible to determine whether the conditions prior to the test have been correctly established before the test script is executed. In particular, if the system fails either during or after the test, it cannot be automatically determined under previous test automation systems whether the failure was due to the precondition step or the test script step. [0065] Wieoben besprochen kann das Prüfsystemden Zustand des Systems währenddes Prüfvorgangsan jedem beliebigen Punkt bestimmen. Dies kann zum Beispiel nachdem Herstellen der Vorbedingungen durchgeführt werden, um zu bestimmen,ob sich das System im Skriptanfangszustand (Block 62 in 2) befindet, was angibt,dass die Vorbedingungen erfolgreich hergestellt wurden, oder dasssich das System in einem systemunbekannten Zustand (Block 64 in 2) befindet, was angibt,dass die Vorbedingungen nicht erfolgreich hergestellt wurden.As discussed above, the test system can determine the state of the system at any point during the test process. This can be done, for example, after the preconditions have been established to determine whether the system is in the initial script state (block 62 in 2 ) indicating that the preconditions have been successfully established or that the system is in a state unknown to the system (block 64 in 2 ), which indicates that the preconditions were not successfully established. [0066] DieAnalyse, um nachzuprüfen,ob die Vorbedingung(en) erfülltwurde(n), kann von Folgendem abhängen:(1) der Wahl der zu untersuchenden Aspekte; (2) der Art der Prüfung dergewähltenAspekte; und/oder (3) der Abfolge der Prüfung der Aspekte.TheAnalysis to verifywhether the precondition (s) are metwas (may) depend on:(1) the choice of aspects to be examined; (2) the type of examination of theselectedaspects; and / or (3) the sequence of examining the aspects. [0067] Ein,einige oder alle der Aspekte könnenzur Untersuchung gewähltwerden, um den Zustand des Systems zu bestimmen. Auf diese Weisekann das automatisierte Prüfenbestimmen, ob ein, einige oder alle der Aspekte dabei versagt haben,sich im erwarteten Zustand (dem Skriptanfangszustand) zu befinden.Zum Beispiel könnennur Aspekte untersucht werden, die sich auf die Vorbedingungen beziehen.Im Besonderen kann die VorbedingungsNachprüfungs-Funktion jeden Aspektdes Systems untersuchen, der durch den Vorbedingungsschritt beeinflußt wird.Als ein Beispiel kann der Vorbedingungsschritt das Laden von Patientendatenaus einer Datenbank in den RAM erfordern. Die VorbedingungsNachprüfungs-Funktionkann den Datenbankaspekt des Systems, das durch den Vorbedingungsschrittbeeinflußtwurde, untersuchen.One, some, or all of the aspects can be selected for examination to determine the condition of the system. In this way, automated testing can determine whether one, some, or all of the Aspects have failed to be in the expected state (the initial script state). For example, only aspects related to the preconditions can be examined. In particular, the precondition verification function can examine every aspect of the system that is affected by the precondition step. As an example, the precondition step may require loading patient data from a database into RAM. The precondition check function can examine the database aspect of the system that was affected by the precondition step. [0068] Alsein anderes Bespiel kann der Vorbedingungsschritt das Laden vonPatientendaten mit bestimmten Sicherheitsschutzvorkehrungen in dieBenutzerschnittstelle erfordern. In diesem Fall können durchdiesen Vorgang möglicherweisedrei Aspekte beeinflußtwerden. Der ers-te ist der Datenbankaspekt, der das Laden der Patien-tendatenerfordert. Um dies zu erreichen, kann eine Be-fehlszeilenschnittstelleverwendet werden, um die Pati-entendaten in die Datenbank zu stellen.Der zweite ist der Benutzerschnittstellenaspekt, der das Verwendenei-ner Betrachtung wie etwa einer Patienten-Durchsicht zum Betrachten der Datenbeinhaltet. Der dritte ist der Sicherheitsaspekt, der eine Schutzvorkehrungauf die Patientendaten anwenden würde. Um dies zu erreichen,kann eine Befehlszeilenschnittstelle verwendet werden, um eine Schutzvorkehrungauf die Daten anzuwenden. Alternativ können Aspekte, die als wichtigbestimmt sind, ebenfalls analysiert werden. Zum Beispiel kann einoder könneneinige der Aspekte, von denen man meint, dass sie für die Funktionalität des Sys temsvon größerer Be-deutungsind, füralle Vorbedingungsnachprüfungenun-tersucht werden.AsAnother example may be the prerequisite step of loadingPatient data with certain safety precautions in theRequire user interface. In this case, you canthis process possiblyinfluenced three aspectsbecome. The first is the database aspect, which is the loading of patient datarequires. To accomplish this, a command line interface can be usedcan be used to put the patient data in the database.The second is the user interface aspect, which is usinga view such as a patient review to view the dataincludes. The third is the security aspect, which is a safeguardto which patient data would apply. To achieve this,a command line interface can be used to provide protectionto apply to the data. Alternatively, aspects can be considered importantare also to be analyzed. For example, aor cansome of the aspects that are believed to affect the functionality of the systemof greater importanceare forall prerequisite checksto be examined. [0069] Fernerkann die Art der Überprüfung einesAspekts, um nachzuprüfen,ob die Vorbedingung erfülltwurde, mehrere Formen annehmen. Eine Form ist, den Aspekt entwederunabhängigoder abhängigvon anderen Aspekten im System zu analysieren. Wie oben besprochenkann die Analyse eines Aspekts von anderen Aspekten unabhängig sein.Um zum Beispiel den Benutzerschnittstellenaspekt unabhängig zuanalysieren, kann eine API in Windows® fragen,ob ein Fenster geöffnetist. Als anderes Beispiel der un-abhängigen Untersuchung kann unterVerwendung einer API auf den Datenbankinhalt zugegriffen werden.Furthermore, the way of checking an aspect to check whether the precondition has been met can take several forms. One form is to analyze the aspect either independently or depending on other aspects in the system. As discussed above, the analysis of one aspect can be independent of other aspects. For example, to independently analyze the user interface aspect, an API in Windows ® can ask if a window is open. As another example of the independent exam, the database content can be accessed using an API. [0070] Wenneine eingebettete Software vorhanden ist, die sich auf einen bestimmtenAspekt richtet, kann die Untersuchung jenes Aspekts typischerweiseunabhängigvon anderen Aspekten durchgeführtwerden. Alternativ kann die Datenbank oder der andere Aspekt ineiner Weise analysiert werden, die von einem anderen Aspekt wieetwa der Benutzerschnittstelle abhängt. Zum Beispiel kann während desVorbedingungsnachprüfungsschrittsdie Patientendurchsicht (die Teil der Benutzerschnittstelle ist)geöffnetwerden, um die Inhalte der Datenbank zu bestimmen. Der Vorbedingungsnachprüfungsschrittkann überdie Patientendurchsicht die Inhalte der Datenbank analysieren. Einanderes Beispiel, das oben besprochen wurde, bezog sich auf einenVorbedingungsschritt, wobei Patientendaten in der Benutzerschnittstellemit bestimmten Sicherheitsschutzvorkehrungen geladen wurden. DerVorbedingungsnachprüfungsschrittkann auf einer Systemebene unabhängig untersuchen,(1) ob die Datenbank die Patientendaten beinhaltet; (2) ob es diePatientendurchsicht tut; und (3) ob den Patienten Sicherheitsschutzvorkehrungenbeigefügtwurden. Alternativ kann der Vorbedingungsnachprüfungsschritt in einer abhängigen Weiseuntersuchen, ob die Vorbedingungen erfüllt wurden.Ifthere is embedded software that is specific to a particularAspect aimed, typically examining that aspectindependentlyperformed by other aspectsbecome. Alternatively, the database or other aspect inin a way that is analyzed by another aspect likedepends on the user interface. For example, during theVorbedingungsnachprüfungsschrittsthe patient review (which is part of the user interface)opento determine the contents of the database. The prerequisite check stepcan aboutthe patient review analyze the contents of the database. Onanother example discussed above related to onePrecondition step, where patient data in the user interfacehave been loaded with certain safety precautions. TheVorbedingungsnachprüfungsschrittcan independently examine at a system level(1) whether the database contains patient data; (2) whether it is thePatient review does; and (3) whether the patient's safety precautionsenclosedwere. Alternatively, the prerequisite check step may be in a dependent mannerexamine whether the preconditions have been met. [0071] EinVerfahren der abhängigenUntersuchung erfolgt durch Einloggen als der Benutzer, der über die PatientendatenZugriff verfügt, Öffnen derPatientendurchsicht und Bestimmen, ob der Benutzer auf die Patientendatenzugreifen kann. Wenn der Benutzer auf die Patientenda-ten zugreifenkann, wurde der Vorbedingungsschritt er-füllt. Ein anderes Verfahrender abhängigenUntersu-chung erfolgt durch Einloggen als ein zweiter Benutzer,der überkeinen Zugriff auf die Patientendaten verfügt, Öffnen der Patientendurchsichtund Bestimmen, ob der zweite Benutzer auf die Patientendaten zugreifenkann. Wenn der zweite Benutzer auf die Patientendaten zugrei-fenkann, wurde der Vorbedingungsschritt nicht erfüllt. Diese Art der abhängigen Analyseeines Aspekts kann wünschenswertsein, wenn der Zweck des Vorbedingungs-nachprüfungsschritts nicht nur dasBestimmen der Inhal-te der Datenbank ist, sondern auch das Bestimmenist, ob in der Anwendung auf die Inhalte zugegriffen werden kann(wie etwa Betrachten der Inhalte über die Benut-zerschnittstelle).OnProcedure of dependentExamination is done by logging in as the user who has the patient informationHas access, open thePatient review and determine if the user is on patient datacan access. When the user access the patient datacan, the precondition step has been fulfilled. Another processthe dependentThe investigation is carried out by logging in as a second user,the overdoes not have access to patient data, open the patient reviewand determining whether the second user is accessing the patient datacan. When the second user accesses the patient datathe precondition step was not met. This kind of dependent analysisone aspect may be desirableif the purpose of the prerequisite verification step is not just thatDetermining the content of the database is, but also determiningis whether the content can be accessed in the application(such as viewing content through the user interface). [0072] Wennein Aspekt in einer abhängigenWeise analysiert wird und eine Vorbedingung für einen bestimmten Aspekt nichterfülltist, kann man nicht fähigsein, zu bestimmen, ob der Grund dafür auf den bestimmten Aspektunter Analyse zurückzuführen ist,oder ob der Grund da-fürauf eine Untersuchung in einer Weise, die von einem anderen Aspektabhängt,zurückzuführen ist.In einem der oben besprochenen Beispiele kann, wenn die Prüfau-tomatisierungssoftwareunter Verwendung der Patientendurchsicht auf die Datenbank zuzugreifenversucht und feststellt, dass die Daten in der Datenbank keine Vorbedingungszustandsdatensind, der Grund dafürFolgendes sein: (1) dass die Daten in der Datenbank nicht korrektsind (d.h., der bestimmte Aspekt unter Untersuchung der Grund für den Fehlerist); oder (2), dass die Benutzer-schnittstelle versagt hat, sodass Versuche, durch die Patientendurchsicht auf die Datenbank zuzugreifen,scheitern (d.h., ein anderer Aspekt, der nicht der Mit-telpunktdieser Untersuchung ist, der Grund für den Fehler ist).Ifan aspect in a dependentWay is analyzed and a precondition for a certain aspect is notFulfillsis not capablebe to determine if the reason for this is on the particular aspectunder analysis,or whether the reason for iton an investigation in a way that is from a different aspectdependsis due.In one of the examples discussed above, if the test automation softwareaccess the database using patient reviewTried and found that the data in the database was not preconditionedare the reason for thatThe following may be: (1) that the data in the database is incorrectare (i.e., the particular aspect under investigation is the reason for the erroris); or (2) that the user interface has failed, sothat attempts to access the database through patient reviewfail (i.e., another aspect that is not the centerthis investigation is, the reason for the error is). [0073] Eineandere Form ist, den Aspekt hinsichtlich besonderer Daten zu analysieren.Zum Beispiel kann der oben beschriebene Datenbankaspekt verglichenwerden, um zu bestimmen, ob die bestimmten Patientendaten in denRAM eingegeben wurden. Eine andere Form ist, den Aspekt hinsichtlichallgemeiner Patientendaten zu analysieren. Zum Beispiel kann deroben beschriebene Datenbankaspekt analysiert werden, um zu bestimmen,ob die geladenen Daten alphanumerischen Zeichen entsprechen. Nocheine andere Form ist, zu bestimmen, ob ein besonderes Ereignis eingetretenist. Zum Beispiel kann der Aspekt der graphischen Benutzeroberfläche (GUI)analysiert werden, um zu bestimmen, ob eine Nachrichtenbox offenist. Ein anderes Beispiel eines Ereignisses ist, ob ein bestimmterBenutzer in das System eingeloggt war. Noch ein anderes Beispieleines Ereignisses ist, ob bestimmte Daten geschützt waren. In vielen SystemenkönnenDaten geschützt werden,so dass nur bestimmte Einloggbenutzer auf die Daten zugreifen können. DieseVorbedingung kann durch Einloggen eines Benutzers, der über keinenZugriff auf die Daten verfügensollte, und Bestimmen, ob der Benutzer auf die Daten zugreifen kann,bestimmt werden. Wenn der Benutzer nicht auf die Daten zugreifen kann,kann die Vorbedingung verifiziert sein. Alternativ ist die Vorbedingungnicht verifiziert, wenn der Benutzer auf die Daten zugreifen kann.Aanother form is to analyze the aspect with regard to special data.For example, the database aspect described above can be comparedto determine whether the particular patient information is in theRAM have been entered. Another form is regarding the aspectanalyze general patient data. For example, thedatabase aspect described above are analyzed to determinewhether the loaded data corresponds to alphanumeric characters. Yetanother form is to determine whether a special event has occurredis. For example, the aspect of the graphical user interface (GUI)are analyzed to determine if a message box is openis. Another example of an event is whether a particular oneUser was logged into the system. Another exampleof an event is whether certain data was protected. In many systemscanData is protected,so that only certain login users can access the data. ThisPrerequisite can be by logging in a user who has noHave access to the dataand determining whether the user can access the databe determined. If the user cannot access the data,the precondition can be verified. Alternatively, the precondition isnot verified if the user can access the data. [0074] AufBasis des Analysierens des Aspekts (der Aspekte) des Systems kannman bestimmen, ob die Vorbedingung richtig hergestellt wurde. Wenndie Vorbedingung richtig hergestellt wurde, wird wie in Block 76 gezeigtdas Prüfungsskriptausgeführt.Nach dem Ausführendes Prüfungsskriptserfolgt wie in Block 77 gezeigt eine Bestimmung, ob dasPrüfungsskripterfolgreich ausgeführtwurde. Diese Bestimmung kann das Bestimmen umfassen, ob sich dasSystem im Zustand des Skriptendes befindet (Block 66 in 2). Zum Beispiel können diegegenwärtigenAspekte des Systems mit den erwarteten Aspekten des Zustands desSkriptendes verglichen werden. Die oben be sprochene Analyse zurBestimmung, ob die Vorbedingung richtig hergestellt wurde, odernicht, kann in gleicher Weise auf die Bestimmung angewandt werden,ob der Zustand des Skriptendes richtig hergestellt wurde, oder nicht.Zum Beispiel befindet sich der Zustand des Computers im Zustand desSkriptendes, wenn die gegenwärtigenAspekte den erwarteten Aspekten entsprechen. Wenn dies nicht der Fallist, kann die Anwendung unter Prüfungabgestürztsein und kann die auf Aspekten basierende Wiederherstellung ausgeführt werden.Wenn die Vorbedingung nicht richtig hergestellt wurde, befindetsich das System in einem unbekannten Zustand. Dann kann eine Wiederherstellungzu einem bekannten Zustand wie etwa dem Voreinstellungszustand durchgeführt werden.Based on analyzing the aspect (s) of the system, one can determine whether the precondition has been correctly established. If the precondition has been established correctly, it will be as in block 76 shown running the exam script. After the execution of the test script is done as in block 77 shown a determination of whether the test script was successfully executed. This determination can include determining whether the system is in the state at the end of the script (block 66 in 2 ). For example, the current aspects of the system can be compared to the expected aspects of the end of the script. The analysis discussed above to determine whether or not the precondition has been properly established can equally be applied to determining whether or not the end of the script has been properly established. For example, the state of the computer is at the end of the script when the current aspects correspond to the expected aspects. If not, the application may have crashed under test and the aspect-based restore can be performed. If the precondition has not been established correctly, the system is in an unknown state. Then restoration to a known state such as the default state can be performed. [0075] Vordem Veränderndes Zustands könnenein, einige oder alle der Aspekte wie in Block 82 gezeigtfür einenachfolgende Analyse aufgezeichnet werden. Zum Beispiel können nurdie Aspekte aufgezeichnet werden, die dabei versagt haben, sichim erwarteten Zustand zu befinden. Das Vorbedingungsnachprüfungsprogrammkann angeben, welche Aspekte versagt haben. Alternativ können alleder Aspekte des Systems aufgezeichnet werden, um ein vollständiges Bilddes Zustands des Systems zum Zeitpunkt des Versagens bereitzustellen.Zusammen mit diesen Informationen kann auch der erwartete Wert und/oderdas Ereignis fürden Aspekt aufgezeichnet werden. Dies kann für einen Vergleich mit dem tatsächlichenWert des Aspekts verwendet werden, um den Grund des Versagens besserzu diagnostizieren. Darüberhinaus könnenzusätzlicheInformationen einschließlichder Zeit des Versagens, der gegenwärtigen Prüfungsabfolge (wie etwa desgegenwärtigenPrüfungsskripts),des vorher ausgeführtenPrüfungsskriptsusw. aufgezeichnet werden. ZusätzlicheInformationen könnenauch eingeloggt werden, wie etwa die Prozessorbelastung, die RAM-Benutzungusw. In einer anderen AusführungsformkönnenInformationen (wie etwa Aspekte, Zeit, Prozessorbelastung, RAM-Verwendungusw.) anstelle einer Aufzeichnung nur nach einem Versagen, sichim erwarteten Zustand zu befinden, vielmehr sogar bei Abwesen heiteines Versagens periodisch aufgezeichnet werden. Zum Beispiel können dieInformationen nach jeder Prüfabfolgeoder währendbestimmter Teile der Prüfabfolgeaufgezeichnet werden.Before changing the state, one, some or all of the aspects as in block 82 shown for subsequent analysis. For example, only those aspects that failed to be in the expected state can be recorded. The pre-condition check program can indicate which aspects have failed. Alternatively, all of the aspects of the system can be recorded to provide a complete picture of the state of the system at the time of failure. Along with this information, the expected value and / or event for the aspect can also be recorded. This can be used to compare with the actual value of the aspect to better diagnose the cause of the failure. In addition, additional information including the time of failure, the current test sequence (such as the current test script), the previously executed test script, etc. can be recorded. Additional information may also be logged in, such as processor usage, RAM usage, etc. In another embodiment, information (such as aspects, time, processor usage, RAM usage, etc.) instead of recording only after failure, may be expected Condition to be located, rather be recorded periodically even in the absence of failure. For example, the information can be recorded after each test sequence or during certain parts of the test sequence. [0076] Nachdem Aufzeichnen der Informationen für die Versagensanalyse können ein,einige oder alle der Aspekte wie in Block 84 gezeigt abgeändert werden,um das System in einen bekannten Zustand wie etwa den Voreinstellungszustandzu stellen. Wie oben besprochen kann der Zustand des Prüfsystemsauf Basis des Verändernsvon Aspekten, die den Zustand definieren, zu jedem beliebigen Zustandabgeändertwerden. Zumindest ein, einige oder alle der Aspekte werden verändert, umeine Veränderungvon einem unbekannten Zustand zum Voreinstellungszustand vorzunehmen.In einer Ausführungsformkönnenalle Aspekte untersucht werden, um zu bestimmen, ob sie sich imVoreinstellungszustand befinden. Wenn sich der Aspekt nicht im Voreinstellungszustandbefindet, wird der Aspekt zu seinem Voreinstellungszustandswertverändert.After recording the information for the failure analysis, one, some or all of the aspects can be as in block 84 shown to change the system to a known state such as the default state. As discussed above, the state of the test system can be changed to any state based on changing aspects that define the state. At least one, some, or all of the aspects are changed to change from an unknown state to the default state. In one embodiment, all aspects can be examined to determine if they are in the default state. If the aspect is not in the default state, the aspect is changed to its default state value. [0077] Ineiner anderen Ausführungsformkönnenweniger als alle der Aspekte zu ihrem Voreinstellungszustand verändert werden.Zum Beispiel kann die Wiederherstellung auf einen einzelnen Aspektbeschränktsein, wie etwa ein Programm, um alle Pop-up-Fenster zu beseitigen; eine Seriendatei,die die Benutzertabelle bereinigt und sie wie nachstehend beschriebenmit Voreinstellungsda-ten wie etwa syngo®-Prüfkrankenhausdatenfüllt;ein Pro-gramm, das die lokale Datenbank bereinigt und sie mit Voreinstellungsdatenfüllt oderdie Datenbank bereinigt hält;oder ein Programm, um die Voreinstellungssystemkonfiguration wiederherzustellen. JedeWiederherstel-lung kann ausgeführtwerden, so dass sie ungeachtet der Prüfabfolge für einen gegebenen Aspekt generischist.In another embodiment, less than all of the aspects can be changed to their default state. For example, recovery can be limited to a single aspect, such as a program to remove all pop-up windows; a merge file that cleans up the user table and uses preset data such as syngo ® test hospital data as described below ten fills; a program that cleans up the local database and populates it with preset data or keeps the database clean; or a program to restore the preset system configuration. Any recovery can be done so that regardless of the test sequence it is generic for a given aspect. [0078] Alternativkann eine auf Aspekten basierende Wiederherstellung eine Serie vongenerischen Programmen ausfüh-ren,wobei jedes der generischen Programme der Reihe nach eines nachdem anderen einen Aspekt wiederher-stellt. Als anderes Beispielwerden nur die Aspekte, die einen Fehler verzeichnen (wie etwa das Nichterfül-len derVorbedingung) zum Voreinstellungszustand verän-dert. Die Vorbedingungsprogrammebestimmen, welche As-pekte ihre Vorbedingungen nicht erfüllt haben.Diese Aspekte könnendann zu ihrem Voreinstellungszustand ab-geändert werden. Zum Beispielkönntewie in 6 und 7 gezeigt ein abnormalesVerhalten entweder in "SysVoreinstellungNachprüfung()" oder VorbedingungNachprü-fung()entdeckt werden. Dies kann dem GenCommander durch die Rückführungswerteder "AusführungVorbedingun-gen()und die "AusführungNachbedingungen()" gemeldet werden.Zusätzlichkönnteder Aspektmanager fürein ausführlichesFehlerloggen auf Se-BigBoszurückverwei-sen.Obwohl dies in den Figuren nicht offenbart ist, kann diese Funktionalität durchEinbringen einer "Ini-tialisiere(SeBigBos: GenCommander)"-Funktionunterstütztwerden.Alternatively, an aspect-based restore may run a series of generic programs, each of the generic programs successively restoring an aspect. As another example, only the aspects that report an error (such as failure to meet the precondition) are changed to the default state. The precondition programs determine which aspects have not met their preconditions. These aspects can then be changed to their default state. For example, like in 6 and 7 Abnormal behavior can be detected in either "SysPreviewReview ()" or PrerequisiteReview (). This can be reported to the GenCommander by the feedback values of the "Execution Preconditions () and the" Execution Postconditions () ". In addition, the aspect manager could refer back to Se-BigBos for detailed error logging. Although this is not disclosed in the figures, this can this functionality is supported by the introduction of an "Initialize (SeBigBos: GenCommander)" function. [0079] Alternativkönnenzusätzlichzu den Aspekten, die einen Fehler verzeichnen, andere Aspekte untersuchtwerden, um zu bestimmen, ob die Aspekte auf die Voreinstellungszustandswerteabgeändertwerden sollen. Zum Bei-spiel könnenbestimmte Aspekte, die als wichtige Aspek-te benannt sind, jedesMal, wenn ein Vorbedingungsfeh-ler aufgetreten ist, untersucht werden.Beispiele wich-tiger Aspekte könnenBenutzerschnittstellen- oder Da-tenbankaspekte beinhalten. Die Untersuchungdieser As-pekte kann das Bestimmen beinhalten, ob sich der Aspektim Voreinstellungszustand befindet. Dies kann das Ver-gleichen desAspektwerts mit dem Voreinstellungszu-standswert umfassen. Wennsich der Aspekt bereits im Voreinstellungszustand befindet, muß der Aspektnicht zum Voreinstellungszustand verändert werden. Wenn sich derAspekt nicht im Voreinstellungszustand befindet, kann der Aspektso verändertwerden, dass er sich im Voreinstellungszustand befindet.alternativecanadditionallyexamines the aspects that make a mistake, other aspectsto determine whether the aspects are based on the preset state valuesamendedshould be. For example, cancertain aspects that are named as important aspects, eachTime when a precondition error has occurred.Examples of important aspects canInclude user interface or database aspects. The investigationthese aspects can include determining whether the aspect isis in the default state. This can be compared to theInclude aspect value with the preset state value. Ifif the aspect is already in the default state, the aspect mustnot be changed to the default state. If theAspect is not in the default state, the aspect canso changedthat it is in the default state. [0080] Alternativkann das Prüfsystemanstelle des Bestimmens, ob sich ein wichtiger Aspekt im Voreinstellungszustandbefindet, vielmehr ohne diese Bestimmung alle wichtigen Aspekteverändern,um sicherzustellen, dass sie sich im Voreinstellungszustand befinden.Als anderes Beispiel könnendie Aspekte mit Vorrangigkeit versehen werden, wobei jedem Aspekteine hohe, mittlere oder niedrige Priorität zugeordnet wird. Wenn einAspekt beim Her-stellen einer Vorbedingung versagt und sich derAspekt in der Kategorie mit hoher Priorität befindet, werden nur Aspektemit hoher Prioritätuntersucht, um zu bestimmen, ob sie sich im Voreinstellungszustandbefin-den.alternativecan the test systeminstead of determining whether an important aspect is in the default stateall important aspects without this provisionchange,to make sure they're in the default state.As another example, you canthe aspects are given priority, with each aspecta high, medium or low priority is assigned. When aAspect fails when creating a precondition and theAspect located in the high priority category will only be aspectswith high priorityexamined to determine if they were in the default stateare located. [0081] Alternativwerden Aspekte mit hoher und mittlerer Prio-rität untersucht, wenn sich einAspekt, der versagt hat, in der Kategorie mit mittlerer Priorität befindet.Schließlichwerden Aspekte mit hoher, mittlerer und niedriger Priorität untersucht,wenn sich ein Aspekt, der versagt hat, in der Kategorie mit niedrigerPriori-tät befindet.Als ein Beispiel dafürkann ein Zwischen-speicheraspekt als niedrige Priorität betrachtetwer-den. Wenn der Zwischenspeicher typischerweise über denBetrieb des Systems hinweg einen stetigen Datensatz be-inhaltet(z.B. einen Satz von Benutzern zum Einloggen in ein System), kannes sein, dass die Inhalte des Zwischenspeichers nicht zur Systemvoreinstellungzurückaktualisiert werden müssen.Alternativ könnendie In-halte des Zwischenspeichers überschrieben werden, wenn derZwischenspeicheraspekt als wichtiger betrachtet wird und sich derVoreinstellungssystemwert fürden Zwischenspeicher nicht im Voreinstellungszustand befin-det.alternativeAspects with high and medium priority are examined when aAspect that failed is located in the medium priority category.Finallyexamines high, medium and low priority issues,if an aspect that has failed is in the lower categoryPriority located.As an example of thata cache aspect may be considered a low prioritybecome. If the cache is typically above theOperation of the system includes a constant data record(e.g. a set of users to log into a system)it may be that the contents of the cache are not the system defaultbackneed to be updated.Alternatively, you canthe contents of the cache are overwritten when theCache aspect is considered more important and thePreset system value forthe buffer is not in the default state. [0082] Fernerkann die Abfolge der Untersuchung und/oder des Veränderns vonAspekten vorbestimmt sein oder wechselnd sein. In einer Ausführungsformist die Abfolge der Untersuchung und der Wiederherstellung der Aspektevorbestimmt. Im Besonderen wird jeder Aspekt in einer vorbestimmtenAbfolge untersucht. Wenn ein Aspekt nicht untersucht und/oder wiederhergestelltwerden kann, wird der Aspekt an einem späteren Punkt unter sucht und/oderwiederhergestellt. Dies liegt an der Tatsache, dass ein Fehler ineinem Aspekt die Untersuchung oder Wiederherstellung eines anderenAspekts beeinflussen kann. Wenn ein Aspekt nicht untersucht oderzu seinem Voreinstellungszustand wiederhergestellt werden kann,kann die Untersuchung oder Wiederherstellung des Aspekts zumindestein zweites Mal durchgeführtwerden, nachdem ein anderer Aspekt (andere Aspekte) wiederhergestelltwurde(n). Zum Beispiel könnenalle Aspekte, die nicht un-tersuchbar oder wiederherstellbar sind,in einer zwei-ten Iteration untersucht oder wiederhergestellt werden.Jene Aspekte, die in der zweiten Iteration nicht wiederhergestelltwerden können,könnenin einer dritten Iteration untersucht werden.Furthercan the sequence of examining and / or changingAspects to be predetermined or changing. In one embodimentis the sequence of examining and restoring the aspectspredetermined. In particular, each aspect is predeterminedSequence examined. If an aspect is not examined and / or restoredthe aspect will be examined at a later point and / orrestored. This is due to the fact that there is a bug inone aspect is the investigation or restoration of anotherAspect. If one aspect is not examined orcan be restored to its default statecan at least examine or restore the aspectperformed a second timebe restored after another aspect (other aspects)was (n). For example, you canall aspects that are not researchable or recoverable,can be examined or restored in a second iteration.Those aspects that are not restored in the second iterationcan becanto be examined in a third iteration. [0083] Inder Darstellung der 6 undder 7 bedeutet dies,dass die Funktions-Aufrufe des UITA AspektManager „Wiederherstellung()" und „SysVoreinstellungNachprü-fung()" für jedenfehlgeschlagenen Aspekt wiederholt werden. Wenn dabei die Wiederherstellungeines Aspekts fehlschlägt,wird versucht, zunächst einenanderen As-pekt wiederherzustellen.In the representation of the 6 and the 7 this means that the function calls of the UITA As pektManager "Recovery ()" and "SysPrefigurationReview ()" can be repeated for each failed aspect. If the restoration of one aspect fails, an attempt is first made to restore another aspect. [0084] DieserVorgang kann fortgeführtwerden, bis die Aspek-te, die nicht wiederherstellbar sind, voneiner Itera-tion zur nächstenkonstant bleiben. In diesem Fall ist eine aggressivere Wiederherstellungwie etwa ein Neu-hochfahren oder eine Neuinstallation erforderlich.Zu-sätzlichkann ein Aufzeichnen der iterativen Vorgangs-schritte durchgeführt werden.Als ein Beispiel kann ei-ne Aufzeichnung der Versuche, die zum Bestimmenoder Wiederherstellen bestimmter Aspekte durchgeführt wur-den,für eine,einige oder alle der Iterationen zusammengestellt werden. Fernerkann der Aspektmanager wie in 4 bis 7 offenbart die Versuche überwachen,um zu bestimmen und aufzuzeichnen, welcher Aspekt die Kor-rekturvon anderen Aspekten behindert hat. Dies kann durch Untersuchender Abfolge der Korrektur der Aspekte erreicht werden. Wenn, zumBeispiel, Aspekt A in einer ersten Iteration nicht korrigiert werdenkann, Aspekt B der einzige Aspekt ist, der in der ersten Iterationkorrigiert wird, und Aspekt B in der zweiten Iteration korrigiertwerden kann, kann der Aspektmanager melden, dass die Korrektur desAspekts A von Aspekt B abhängigwar. Darüberhinaus kann der Aspektmanager bestimmte Abschnitte des Aspekts für eine spätere Diagnoseaufzeichnen. Die Aufzeichnung kann auf Fehlermeldungen gerichtetsein, die durch das System bereitgestellt wer-den.This process can continue until the aspects that cannot be restored remain constant from one iteration to the next. In this case, a more aggressive recovery, such as rebooting or reinstalling, is required. In addition, the iterative process steps can be recorded. As an example, a record of the attempts made to determine or restore certain aspects can be compiled for one, some, or all of the iterations. Furthermore, the aspect manager as in 4 to 7 discloses monitoring attempts to determine and record which aspect has hindered the correction from other aspects. This can be achieved by examining the sequence of correcting the aspects. For example, if aspect A cannot be corrected in a first iteration, aspect B is the only aspect that can be corrected in the first iteration, and aspect B can be corrected in the second iteration, the aspect manager can report that the correction of aspect A was dependent on aspect B. The aspect manager can also record certain portions of the aspect for later diagnosis. The recording can be directed to error messages which are provided by the system. [0085] EinBeispiel dieser Abhängigkeit,die eine iterative, auf Aspekten basierende Wiederherstellung erfordernkann, kann sich auf Datenbankobjekte beziehen. Ein Versuch, einDatenbankobjekt zu untersuchen oder abzuändern, kann fehlschlagen, wennein anderer Aspekt wie etwa ein Benutzerschnittstellenaspekt versagt hat.In diesem Fall wird das Datenbankobjekt aufgrund des Versagens desanderen Aspekts gesperrt. Wenn hinsichtlich des Datenbankobjektszuerst ein Versuch unternommen wird, seinen Wert zu verändern, undder Versuch fehlschlägt,werden andere Aspekte wie etwa der Benutzerschnittstellenaspektabgeändert.Auf diese Weise kann das Datenbankobjekt nachfolgend abgeändert werden,nachdem der Benutzerschnittstellenaspekt zum Voreinstellungszustandverändertwurde.OnExample of this dependency,that require iterative, aspect-based recoverycan, can refer to database objects. One try, oneExamining or modifying a database object can fail ifanother aspect, such as a user interface aspect, has failed.In this case, the database object is lost due to the failure of theother aspect locked. If regarding the database objectan attempt is first made to change its value, andthe attempt failsother aspects such as the user interface aspectamended.In this way, the database object can subsequently be modified,after the user interface aspect to the preset statechangedhas been. [0086] Schließlich kannes unterschiedliche Arten der Wiederherstellung zu einem bekanntenZustand geben. In einer Ausführungsformgibt es nur eine Art von Wiederherstellung der Aspekte zu einembekannte Zustand. Ein generisches Programm für jeden Aspekt ändert jedenAspekt zum Systemvoreinstellungszustand ab. Alternativ gibt es mehrals eine Art des Zurückveränderns zurSystemvoreinstellung. Wie nachstehend unter Bezugnahme auf Tabelle3 ausführlicherbesprochen kann die Art der Wiederherstellung entweder sehr feinoder grob sein. Diese unterschiedlichen Arten der Wiederherstellungermöglichendie Wahl, wie ein besonderer Aspekt zum Systemvoreinstellungszustandverändertwird.Finally, canthere are different types of recovery to a known oneGive condition. In one embodimentthere is only one way of restoring the aspects to oneknown condition. A generic program for every aspect changes everyoneAspect of system default state. Alternatively, there is moreas a way of changing back toSystem default. As below with reference to table3 in more detaildiscussed the type of recovery can be either very fineor be rough. These different types of restorationenablethe choice of how a special aspect to the system default statechangedbecomes. [0087] Nachdemder Aspekt (die Aspekte) verändertist (sind), wird wie in Block 86 gezeigt der Zustand des Prüfsystemsunter sucht, um zu bestimmen, ob es sich im Systemvoreinstellungszustandbefindet. Dies ist dem wie oben unter Bezugnahme auf Block 70 beschriebenenPrüfendes Voreinstellungszustands ähnlich.Wenn sich das System im Systemvoreinstellungszustand befindet, gehtdas Prüfsystemwie in Block 71 gezeigt zum Zugriff auf das nächste Prüfungsskript über. Andernfallskann wie in Block 88 gezeigt eine zusätzliche automatische Bereinigungdurchgeführtwerden.After the aspect (s) are changed, it becomes like in block 86 shown the state of the test system is looking to determine if it is in the system default state. This is as above with reference to block 70 Checking the preset state described similar. If the system is in the system default state, the test system goes as in block 71 shown to access the next exam script above. Otherwise, as in block 88 shown an additional automatic cleanup can be performed. [0088] EineArt der automatischen Bereinigung kann als "reinigende Chemotherapie" bezeichnet werden, wasandeutet, dass diese Art der Wiederherstellung der Therapietech-nikzur Bekämpfungvon Krebs ähnlich ist.Bei der Krebschemotherapie wird ein Patient nach einer erfolg-reichenBehandlungsaktion, bei der Körperabtastungenkein Zeichen von Tumoren mehr zeigen, einer letzten Chemotherapieunterzogen, um jegliche bösartigenZellen, die einer Feststellung entkommen sind, zu zerstö-ren. Ineiner ähnlichenWeise kann der reinigende Chemotherapieschritt durchgeführt werden,um jegliche Schläferzellenvon fehlausgerichteten oder fehlerhaften unberücksichtigen Aspekten zu korrigieren,die im Sys-tem zurückgelassensein könntenund möglicherweisezu unvorhersagbaren Zeitpunkten falsche Prüfergebnisse verursachen. Diereinigende Chemotherapie kann jedes Mal nach dem Aufrufen des aufAspekten basierenden Wie-derherstellungsverfahrens, das das Systemzum Vorein-stellungszustand zurückstellt,als ein generischer Schritt angewandt werden. Alternativ kann diereinigen-de Chemotherapie wie in 3 gezeigtnur angewandt werden, nachdem das auf Aspekten basierende Wiederherstellungsverfahrenbeim Zurückführen desSystems zum Voreinstellungszustand versagt hat. Ein Beispiel derreinigenden Chemotherapie kann ein automatisches Neu-hochfahrendes Systems sein, um die Voreinstellungssys-temhochfahrüberprüfungen unddie Aspektzustandsüberprü-fung ein zusätzlichesMal ausführenzu können.Zusätz-lichzum Neuhochfahren des Systems könnenBatchskripte, die einmal fürdie Einstellung nach der Installation ausgeführt werden, automatisch nocheinmal aus geführtwerden. Dies kann währenddes in 2 beschriebenenEinschaltens erfolgen.One type of automatic cleanup can be termed "cleansing chemotherapy", which suggests that this type of restoration is similar to the anti-cancer therapy technology. In cancer chemotherapy, a patient undergoes final chemotherapy after a successful treatment, in which body scans no longer show any sign of tumors, in order to destroy any malignant cells that have escaped a finding. In a similar manner, the chemotherapy cleansing step can be performed to correct any sleeper cells from misaligned or faulty disregarded aspects that could be left behind in the system and possibly cause incorrect test results at unpredictable times. Cleansing chemotherapy can be used as a generic step each time the aspect-based recovery process is called, which resets the system to its default state. Alternatively, the clean-de chemotherapy as in 3 shown are only applied after the aspect-based recovery process failed to return the system to the default state. An example of cleansing chemotherapy can be an automatic restart of the system in order to be able to carry out the presetting system startup checks and the aspect status check an additional time. In addition to restarting the system, batch scripts that are run once for the setting after installation can be automatically run again. This can occur during the 2 described switching on. [0089] Eineandere Art der Bereinigung ist eine Zwischenreinigung. Diese Artvon Bereinigung ist nicht so erschöp-fend wie die oben beschriebenereinigende Chemothera-pie. Stattdessen kann es für eine Anwendung unter Prü-fung undeine Prüfungsautomatisierungstechniknützlichsein, automatisch zusätzlicheBereinigungsschritte vor-zunehmen. Wie in 3 gezeigt wird die automatische Bereinigungdurchgeführt,wenn die auf Aspekten basie-rende Wiederherstellung bei der Rückführung desSystems zu einem bekannten Zustand wie etwa der Systemvoreinstellungversagt. Alternativ kann die automatische Bereinigung wie etwa dieZwischenbereinigung automatisch nach der auf Aspekten basierendenWiederherstellung durchgeführtwerden, ob nun die auf Aspekten basierende Wiederherstellung erfolgreichwar, oder nicht. Ferner kann die automatische Bereinigung vor odernach der auf Aspekten basierenden Wiederherstellung durchgeführt werden.Ein Beispiel einer Zwischenbereinigung kann das Beseitigen oderEntfernen aller Pop-up-Fensterbeinhal-ten. Ein anderes Beispiel einer Zwischenbereinigung kanndie automatische Fähigkeitbeinhalten, einen von der Anwendung unter Prüfung hervorgebrachten Dienstzu beenden. Die Anwendung unter Prüfung kann einen geson-dertenDienst wie etwa ein Aufspürenvon Viren hervor-bringen. Die Zwischenbereinigung kann das Aufspüren derViren beenden. Dieser Zwischenbereinigungsschritt ist optional undkann unabhängigvon anderen Wiederherstel-lungsprogrammen vorhanden sein. Zum Beispielkann die Zwischenbereinigung ein Teil der einzelnen Aspektwie-derherstellungendes auf Aspekten basierenden Wieder-herstellungsverfahrens sein.Another type of cleanup is an intermediate cleanup. This type of cleansing is not as exhaustive as the cleaning chemotherapy described above. Instead, it can be useful for a test application and test automation technique to automatically perform additional cleanup steps. As in 3 shown, automatic cleanup is performed when the aspect-based restore fails to return the system to a known state, such as system default. Alternatively, the automatic cleanup such as the intermediate cleanup can be performed automatically after the aspect-based recovery, whether the aspect-based recovery was successful or not. Automatic cleanup can also be performed before or after the aspect-based recovery. An example of an intermediate cleanup can include removing or removing all pop-up windows. Another example of an intermediate cleanup may include the automatic ability to stop a service under test by the application. The application under inspection can produce a separate service, such as virus detection. The intermediate cleaning can stop the virus detection. This intermediate cleanup step is optional and can be independent of other recovery programs. For example, the intermediate cleanup may be part of the individual aspect restores of the aspect-based restore process. [0090] Nachdem Durchführender automatischen Bereinigung wird wie in Block 90 gezeigtder Zustand des Prüfsystemsuntersucht, um zu bestimmen, ob es sich im Systemvoreinstellungszustandbefindet. Dies ist dem wie oben unter Bezugnahme auf Block 70 beschriebenenPrüfendes Voreinstellungszustands ähnlich.After performing the automatic cleanup it will be like in block 90 shown examining the state of the test system to determine if it is in the system default state. This is as above with reference to block 70 Checking the preset state described similar. [0091] Wennsich das System im Systemvoreinstellungszustand befindet, geht dasPrüfsystemwie in Block 71 gezeigt zum Zugriff auf das nächste Prüfungsskript über. Andernfallskann wie in Block 92 gezeigt eine zusätzliche manuelle Bereinigungdurchgeführtwerden. Die manuelle Bereinigung kann eine Neuinstallation der Softwarefür dasSystem beinhalten. Fürkomplexe Softwareprodukte kann sich die Neuinstal-lation jedochals äußerst zeitaufwendigerweisen. Die Neuinstallation kann ein manuelles Einrichten desBe-triebssystems, ein manuelles Installieren der Anwen-dungssoftwareund ein manuelles Konfigurieren ortsspe-zifischer Konfigurationenumfassen. Fürkomplexe Soft-wareprodukte kann sich die Neuinstallation jedochals äußerst zeitaufwendigerweisen.If the system is in the system default state, the test system goes as in block 71 shown to access the next exam script above. Otherwise, as in block 92 shown an additional manual cleanup can be performed. Manual cleanup can include reinstalling the software for the system. For complex software products, however, the new installation can prove to be extremely time-consuming. The reinstallation can include manual setup of the operating system, manual installation of the application software, and manual configuration of location-specific configurations. However, reinstalling complex software products can be extremely time-consuming. [0092] Wieoben besprochen wird wie in Block 76 gezeigt das Prüfungsskriptausgeführt,wenn die Vorbedingungen richtig hergestellt wurden. Dann können dieNachbedingungen ausgeführtwerden. Wie oben besprochen könnendie Nachbedingungen als eine "Bereinigungs"stufe zum Bereinigendes Systems vor dem Ausführender nächstenPrüfungangesehen werden. In einer Ausführungsformfüh-rendie Nachbedingungen das System wie in Block 78 ge-zeigtzum Voreinstellungszustand zurück.Alternativ könnendie Nachbedingungen die Aspekte in einen von der Systemvoreinstellungunterschiedlichen Zustand zurückbringen.Zum Beispiel könnendie Nachbedingungen den Zustand des Systems zu einem Prüfungsvoreinstellungszustandverändern,der den Voreinstellungszustand füreine Gruppe von Prüfungsfällen darstellt.Der Prüfungsvoreinstellungszustandkann vom Systemvoreinstellungszustand verschieden sein. Das Zurückführen desSystems in einen Prüfungsvoreinstellungszustandanstelle des Systemvoreinstellungszustands ist annehmbar, wenn die Prüfabfolgenvom Prüfungsvoreinstellungszustandbeginnen. Wenn jedoch unterschiedliche Prüfabfolgen von unterschiedlichenZuständenbeginnen, kann ein zusätzlichesBereinigen erforderlich sein. Dies wird nachste-hend ausführlicherbeschrieben. In noch einer anderen Ausführungsform müssen keineNachbedingungen ausgeführtwerden. Der auf Aspekten basieren de Wiederherstellungsmechanismuskann vielmehr unmittelbar nach dem Ausführen des Prüfungsskripts ausgeführt werdenund das System zur Systemvoreinstellung zurückbringen.As discussed above, as in block 76 shown the test script executed when the prerequisites were properly established. Then the post-conditions can be carried out. As discussed above, the post-conditions can be viewed as a "cleanup" stage for cleaning the system before performing the next test. In one embodiment, the postconditions run the system as in block 78 shows back to the default state. Alternatively, the postconditions can bring the aspects back into a state different from the system default. For example, the postconditions can change the state of the system to an exam default state, which is the default state for a group of exam cases. The test preset state can be different from the system preset state. Returning the system to a test preset state instead of the system preset state is acceptable when the test sequences start from the test preset state. However, if different test sequences start from different states, additional cleaning may be required. This is described in more detail below. In yet another embodiment, no postconditions need to be performed. Rather, the aspect-based recovery mechanism can be run immediately after the test script is run and can bring the system back to the system default. [0093] Nachdemdie Nachbedingungen ausgeführtsind, kann das System wie in Block 80 gezeigt überprüft werden,um zu bestimmen, ob es sich im Systemvoreinstellungszustand befindet.Falls die Antwort "ja" ist, wird wie inBlock 71 gezeigt auf das nächste Prüfungsskript zugegriffen undder Vorgang wiederholt. Wenn sich das System nicht in der Systemvoreinstellungbefindet, kann die auf Aspekten basierende Wiederherstellung wie obenbesprochen ausgeführtwerden.After the postconditions are executed, the system can block as in 80 shown to determine if it is in the system default state. If the answer is "yes", it is as in block 71 shown accessed the next exam script and repeated the process. If the system is not in the system default, aspect-based recovery can be performed as discussed above. [0094] EinBeispiel der Anwendung der auf Aspekten basierenden Wiederherstellungkann das automatisierte Prüfeneiner medizinischen Abbildungsanwendung wie etwa syngo® sein.syngo® isteine umfassende Softwarelösungfür medizinischeAbbildungsaufgaben, Anwendungen und Systeme. syngo® ermöglicht,dass alle Arbeitsstationen, von der Ausführungsart der Erlangung biszu unabhängigenArbeitsstationen, an der gleichen intuitiven Benutzerschnittstelleund den gleichen Betriebsprinzipien teilhaben. syngo® stelltdiese gleichförmige Arbeitsumgebung über klinischeNetze und darüberhinaus bereit. syngo® ist dazu entworfen, einemedizinische Abbildung nahtlos in den gesamten klinischen Arbeitsfluß von derRegistrierung bis zur Rechnungslegung zu integrieren.An example of the use of aspect-based recovery can be the automated review of a medical imaging application such as syngo ® . syngo ® is a comprehensive software solution for medical imaging tasks, applications and systems. syngo ® enables all workstations, from the type of acquisition to independent workstations, to share the same intuitive user interface and the same operating principles. syngo ® provides this uniform work environment across clinical networks and beyond. syngo ® is designed to seamlessly map medical imaging throughout the clinical workflow from registration to billing integration. [0095] Umdiese Integration der medizinischen Abbildung zu erreichen, weistsyngo® eineArchivierungs- und Vernetzungsfunktionalität einschließlich (1) des Kommunizierensvon Patienten- undUntersuchungsdaten; (2) des Exportierens/Importierens von Abbildungsdatenzu/von MOD, CD-R oder Diskette; (3) des Sendens/Empfangens von Abbildungdatenzu/von anderen DICOM(digitale Abbildung und Kommunikationen in derMedizin)-Knotenim Netz; und (4) des Suchens und Wiederauffindens von Abbildungsdatenim Netz auf.In order to achieve this integration of medical imaging, syngo ® has an archiving and networking functionality including (1) the communication of patient and examination data; (2) exporting / importing image data to / from MOD, CD-R or diskette; (3) sending / receiving imaging data to / from other DICOM (digital imaging and medical communications) nodes on the network; and (4) searching and retrieving map data on the network. [0096] syngo® ermöglicht denAustausch von Informationen zwischen Systemen von unterschiedlichenVerkäuferndurch Netze oder Medien. Dies führtzu einer verbesserten Leistungsfähigkeitbei der Diagnose und Therapie. syngo® integriertmedizinische Abbildungen in einen vollständigen klinischen Arbeitsfluß von der Überweisungbis zur Rechnungslegung und ermöglichtdadurch eine optimierte Benutzung von Abbildungssystemen. syngo® unterstützt einenumfassenden Satz von DICOM-Objekten einschließlich Computerradiographie(CR); Computertomographie (CT); digitales Röntgen (DX); Mammographie (MG);Magnetresonanz (MR); Nuklearmedizin (NM), Positronenemissionstomographie(PET); Strahlentherapie (RT); des sekundäres Einfangen (SC); Ultraschall(US), US-Mehrfachrahmen; Wellenformen; Röntgenangiographie (XA), XA-Mehrfachrahmen;und Röntgenstrahlenfluoroskopie(XRF). Ferner stellt syngo® einen umfassenden Satzvon DICOM-Funktionen, die mit IHE- und VA-Bestimmungen konform sind, bereit, einschließlich DICOM-Worklist, um eintreffendePatienten direkt vom Terminplanungssystem (z.B. dem Radiologie-Informationssystem)zu registrieren; DICOM Modality Performed Procedure Step, um derRechnungslegung und der Verwendungsverwaltung eine vollständige Vorgangsverfolgungzu ermöglichen;DICOM Print, um Abbildungen in einem weiten Bereich von vernetztenKameras und Papierdruckern auszugeben; DICOM Storage zum Speichernvon Informationen an verbundenen Knoten; DICOM Storage zum Speichernin einem weiten Bereich von Austauschmedien (z.B. magnetooptischePlatte MOD, CD-R, Diskette); und DICOM Query & Retrieve, um Patientendaten und Untersuchungsdatenim Netz zu suchen und wiederaufzufinden. DICOM Storage Commitment.syngo ® enables the exchange of information between systems from different sellers through networks or media. This leads to improved performance in diagnosis and therapy. syngo ® integrates medical images into a complete clinical workflow from transfer to billing, thereby enabling an optimized use of imaging systems. syngo ® supports a comprehensive set of DICOM objects including computed radiography (CR); Computed tomography (CT); digital x-ray (DX); Mammography (MG); Magnetic resonance (MR); Nuclear medicine (NM), positron emission tomography (PET); Radiotherapy (RT); secondary trapping (SC); Ultrasound (US), US multiple frames; Waveforms; X-ray angiography (XA), XA multiple frames; and X-ray fluoroscopy (XRF). Syngo ® also provides a comprehensive set of DICOM functions that are compliant with IHE and VA regulations, including the DICOM worklist, to register incoming patients directly from the scheduling system (eg the radiology information system); DICOM Modality Performed Procedure Step to enable complete accounting of transactions and usage management; DICOM Print to output images in a wide range of networked cameras and paper printers; DICOM Storage for storing information on connected nodes; DICOM Storage for storage in a wide range of exchange media (eg magneto-optical disk MOD, CD-R, diskette); and DICOM Query & Retrieve to search and retrieve patient data and examination data online. DICOM Storage Commitment. [0097] Typischerweiseschreitet der Arbeitsfluß vomRegistrieren eines Patienten zum Erlangen einer Abbildung für den Patienten,Betrachten der Abbildung, Nachverarbeiten der Abbildung und Verfilmenvoran. syngo® kanndiese Aufgaben füralle Abschnitte des medizinischen Abbildens einschließlich, zumBeispiel, der Patientenregistrierung; der Patientendurchsicht; desBetrachtens; des Verfilmens; 3D; des Durchfliegens und der Abbildungsverschmelzungvollbringen.Typically, the workflow proceeds from registering a patient to obtaining an image for the patient, viewing the image, postprocessing the image, and filming. syngo ® can perform these tasks for all stages of medical imaging including, for example, patient registration; the patient review; of contemplation; of filming; 3D; of flying through and fusing the images. [0098] DiePatientenregistrierung kann Folgendes beinhalten: alle erheblichendemographischen und Untersuchungsdaten des Patienten; einen Direkteintragoder eine Wiederauffindung von einem DICOM Worklist-Provider; einendirekten Start der Erlangung mit einem einzelnen Maustastendruck;eine Vorgangsverfolgung mit DICOM MPPS (Modality Performed ProcedureStep); und eine Korrektur von falschen oder fehlenden Einträgen in derPatientendemographie und DICOM-Merkmalen.ThePatient registration can include: any significantdemographic and examination data of the patient; a direct entryor a recovery from a DICOM worklist provider; onedirect start of acquisition with a single mouse button press;a process tracking with DICOM MPPS (Modality Performed ProcedureStep); and a correction of incorrect or missing entries in thePatient demography and DICOM features. [0099] DiePatientendurchsicht kann einen stetigen Zugriff von allen Anwendungenauf dem System auf Patienten- und Untersuchungsdaten beinhalten.Das Betrachten kann die Funktionalität des Ladens von Abbildungenvon der Patientendurchsicht oder direkt von anderen syngo®-Anwendungen(z.B. Untersuchung oder 3D-Nachverarbeitung); des Darstellens undAnordnens der Abbildungen in jener Weise, die für das diagnostische Problemam besten geeignet ist; des Überprüfens, Verarbeitensund Bewertens der Ergebnisse und ihrer Vorbereitung für die Diagnostik;und des Sendens der Abbildungen zum Verfilmen, ihres Speichernsoder ihres Sendens an andere Stellen im Krankenhaus beinhalten.The patient review can include constant access from all applications on the system to patient and examination data. Viewing can include the functionality of loading images from the patient review or directly from other syngo ® applications (eg examination or 3D post-processing); presenting and arranging the images in the manner most appropriate to the diagnostic problem; reviewing, processing and evaluating the results and preparing them for diagnosis; and sending the images to film, store them, or send them to other locations in the hospital. [0100] DasVerfilmen kann die Funktionalitätdes Vorbetrachtens auf einer 1 : 1-Basis eines virtuellen Filmbogens,des direkten interaktiven Manipulierens, des Ausgebens (manuelloder automatische) auf Film oder Papier; des Kontrollierens desVerfilmungstätigkeitsstatus(wiederholen, stornieren, umleiten) beinhalten. 3D (verarbeite Volumensdatensätze vonverschiedenen Ausführungsarten;verschmelze überlappende3D-Serien zu einer einzelnen stetigen 3D-Serie; beschränke dieDatensätzemit Zwischenablage oder unregelmäßigem Volumenvon Interesse; stelle die Daten mit hoher Qualität dar; Mehrebenen-Wiederaufbau (MPR);schattierte Oberflächendarstellung(SSD); Projektion mit maximaler Intensität (MIP); Volumenserbrin gungstechnikund Objektbearbeiter). CorRea bezieht sich auf zusätzliche,mit einer Abbildung verbundene Daten, die eine Identifikation derAbbildung fürdie Rechnungslegung, die Speicherung und Analysezwecke bereitstellen.Die zusätzlichenDaten könnendie Patientenidentifikation und das Geburtsdatum und das Geschlechtdes Patienten beinhalten. Auf diese Weise kann unter Verwendungder zusätzlichenDaten wie etwa der Patientenidentifikation auf eine bestimmte Abbildungverwiesen werden. CorRea ist ein Datenbearbeitungswerkzeug, daseine Abänderungder zusätzlichen,mit der Abbildung verbundenen Daten gestattet.TheThe functionality can be filmedpreviewing on a 1: 1 basis of a virtual film sheet,of direct interactive manipulation, of output (manualor automatic) on film or paper; of controlling theFilming activity status(repeat, cancel, redirect). 3D (processed volume data records fromdifferent types;merge overlapping3D series into a single continuous 3D series; limit therecordswith clipboard or irregular volumeof interest; present the data with high quality; Multilevel reconstruction (MPR);shaded surface representation(SSD); Maximum intensity projection (MIP); Volume production technologyand object processor). CorRea refers to additional,data associated with an image that identifies theIllustration forprovide accounting, storage and analysis purposes.The additionalData canpatient identification and date of birth and genderof the patient. This way you can usethe additionalData such as patient identification on a particular mapto get expelled. CorRea is a data editing tool thata changethe additional,Data associated with the image allowed. [0101] Wieoben besprochen integriert syngo® diemedizinische Abbildung in einen vollständigen klinischen Arbeitsfluß von der Überweisungbis zur Rechnungslegung. MPPS (Modality Performed Procedure Step)gestattet die Integration dieser gesonderten Krankenhausanwendungenvon der Rechnungslegung zu den Patientenaufzeichnungen, dem Einkaufusw. Wenn ein Patient zum Beispiel unter Verwendung eines CT-Scanners analysiertwird, könnendie bestimmte Abbildung des Patienten und die sich aus der Abtastungergebende Röntgenstrahldosierungzur Patientenaufzeichnungsanwendung gesendet werden. Ferner können dieInformationen bezüglichder Abtastung zur Rechnungslegungsanwendung gesendet werden. Schließlich können diedurch die CT-Abtastungverwendeten Materialien der Einkaufsanwendung gemeldet werden.As discussed above, syngo ® integrates medical imaging into a full clinical workflow from referral to billing. MPPS (Modality Performed Procedure Step) allows the integration of these separate hospital applications from accounting to patient records, shopping, etc. When a patient is analyzed using a CT scanner, for example, the particular image of the patient and the result of the scan can be resulting x-ray dosage are sent to the patient record application. Furthermore, the information regarding the scan can be sent to the accounting application. Finally, the materials used by the CT scan can be reported to the purchasing application. [0102] BeispielhafteAspekte fürdie Prüfautomatisierungder syngo®-Anwendung sind inTabelle 3 gezeigt.Exemplary aspects for the test automation of the syngo ® application are shown in Table 3. [0103] Wiein Tabelle 3 gezeigt sind die Aspekte nach Zustandsgruppen gruppiert,wobei die Kategorien gemeinsame Aspekte aufweisen. Zum Beispielumfaßtdie Datenbank-Zustandsgruppe Aspekte der Voreinstellungsdaten, derprüfungsfallspezifischenDaten und der Austauschablage. Ferner sind für jeden Aspekt eine Beschreibung,für jedenAspekt die Systemvoreinstellung und mögliche Zustände nach dem Ausführen eines Prüfvorgangsbereitgestellt. Die auf Aspekten basierende Wiederherstellung kannverschiedene Arten der Wiederherstellung zum Voreinstellungszustandausführen.Wie in Tabelle 3 gezeigt könnenverschiedene Arten der Wiederherstellung zum Beispiel eine Feinbereinigungund eine Grobbereinigung sein. Die Feinbereinigung ist weniger eingreifendals die Grobbereinigung. Die Ausführung der auf Aspekten basierendenWiederherstellung kann nur die Feinbereini-gung, nur die Grobbereinigungoder eine Kombination aus Feinbereinigung und Grobbereinigung verwenden.Was die Feinbereinigung betrifft, kann die auf Aspekten basie-rende WiederherstellungAspekte etwa durch Neuladen o-der Entfernen von Daten, Schließen vonFenstern usw. abändern.Was die Grobbereinigung betrifft, kann die auf Aspekten basierendeWiederherstellung eine Bereini-gung und eine Neuherstellung derVoreinstellungskonfi-guration vornehmen oder eine Komponente des Systemsneu starten. Der erzwungene Neustart einer Komponente steht im Gegensatzzu einem Neuhochfahren, das ein erzwunge-ner Neustart der gesamtenAnwendung unter Prüfungist. Wie oben besprochen ist die einzelne Korrektur von As-pektenein Vorteil der auf Aspekten basierenden Wieder-herstellung. DasGestalten einer Anwendung unter Prüfung mit Komponenten ermöglicht einbesseres Prüfenund Kontrollieren von Aspekten, die mit den Komponenten verbundensind.Howin table 3 the aspects are grouped by condition groups,the categories have common aspects. For examplecomprisesthe database state group aspects of the preset data, thetest case-specificData and the exchange filing. There is also a description for each aspect,for eachAspect of the system default and possible states after executing a test processprovided. Aspect based recovery candifferent types of restore to the default stateTo run.As shown in Table 3different types of restoration, for example a fine adjustmentand be a rough cleanup. The fine adjustment is less intrusivethan the rough adjustment. The execution of the aspects basedRestoration can only be done by fine cleaning, only rough cleaningor use a combination of fine adjustment and rough adjustment.As for fine-tuning, aspect-based recovery canAspects such as reloading or removing data, closingModify windows, etc.As for the rough adjustment, the aspect-basedRestore a cleanup and restore theMake preset configuration or a component of the systemstart anew. The forced restart of a component is in conflictto reboot, which is a forced restart of the wholeApplication under examinationis. As discussed above, the individual correction of aspects isan advantage of aspect-based recovery. TheDesigning an application under test with components enables onebetter testingand controlling aspects associated with the componentsare. [0104] Wiein Tabelle 3 gezeigt sind einige der Zustandsgruppen spezifischfür diesyngo®-Anwendung,was die Patientenregistrierung; die Patientendurchsicht; den Betrachter;das Verfilmen; 3D; CorRea; und MPPS beinhaltet. Wenn eine Anwendungwie etwa syngo® einemautomatisierten Prüfenunterzogen wird, können Aspektevon syngo® wiein Tabelle 3 offenbart definiert sein. Das automatisierte Prüfen kannPrüfungsskriptefür jededer Funktionalitäten,auf eine Vielfalt von Weisen, des Registrierens eines Patienten,des Erlangens einer Abbildung fürden Patienten, des Betrachtens der Abbildung, des Nachverarbeitensder Abbildung, und des Verfilmens ausführen.As shown in Table 3, some of the condition groups are specific to the syngo ® application, which affects patient registration; the patient review; the viewer; the filming; 3D; Correa; and includes MPPS. When an application such as syngo subjected ® an automated checking aspects of syngo ® may be defined as disclosed in Table 3 below. Automated testing can run test scripts for each of the functionalities in a variety of ways, registering a patient, obtaining an image for the patient, viewing the image, post-processing the image, and filming. [0105] 2 zeigt ein Ablaufdiagramm,wobei die Systemvoreinstellung den Zustand des Systems darstellt, indem die Vorbedingung fürdas Prüfungsskripthergestellt wird. Es gibt Fälle,in denen die Vorbedingung für dasPrüfungsskriptvon einem Zustand hergestellt wird, der ein anderer als der Systemvoreinstellungszustand ist.Zum Beispiel kann die Vorbedingung von einem übergeord-neten Zustand im Systemhergestellt werden. Der überge-ordneteZustand kann ein Zustand sein, den die Anwen-dung unter Prüfung alsihren Voreinstellungszustand de-finiert, der aber nicht den Voreinstellungszustandfür dasSystem darstellt. 2 Figure 11 shows a flowchart with the system default representing the state of the system in which the test script precondition is established. There are cases where the precondition for the check script is made from a state other than the system default state. For example, the precondition can be established from a higher-level state in the system. The parent state can be a state that the application under examination defines as its default state, but which is not the system default state. [0106] ZumBeispiel benötigenmanche Prüfungsfälle beimsyngo®-Verfilmen, dass einzusätzlicherPersonalcomputer eingerichtet wird, um einen DICOM-Druckerknotenzu simulieren. Als anderes Beispiel kann ein Computersystem miteiner bestimmten Datenbank (wie etwa einer Datenbank, die Patientendatenenthält)verbunden sein. Wenn alle Prüfungsfälle beimBeginnen von der Systemvoreinstellung den unter Bezugnahme auf 2 und 3 besprochenen Richtlinien folgen, muß dieseEinrichtung (die zumindest einen Neustart von syngo® benötigt) für jedenPrüfungsfallhergestellt und rückgängig gemachtwerden, wodurch zusätzlicheAusführungszeithervorgerufen wird, die mit jedem derartigen Prüfungsfall zunimmt. Anstelleeines Beginnens von der Systemvoreinstellung kann das automatisiertePrüfendiese Netzwerkkonfiguration vielmehr ein Mal einrichten und dannalle damit in Zusammenhang stehenden Fälle in einer Reihe prüfen. DerartigeVoreinstellungszustände,die keine Systemvoreinstellung darstellen, können in einen auf Aspektenbasierenden Wiederherstellungsmechanismus integriert werden. Darüber hinausermöglichtdas Verwenden des auf Aspekten basierenden Wiederherstellungsmechanismusin manchen Arten der Prüfungsausführung abgesehenvon der Wiederherstellung von einem systemunbekannten Zustand zusätzlicheVorteile, wie nachstehend ausführlicherbesprochen wird.For example, some test cases with syngo ® filming require that an additional personal computer be set up to simulate a DICOM printer node. As another example, a computer system may be connected to a particular database (such as a database that contains patient data). If all of the test cases when starting from the system preset referring to 2 and 3 Following the guidelines discussed, this facility (which requires at least a restart of syngo ® ) must be created and undone for each test case, which causes additional execution time that increases with each such test case. Instead of starting from the system default, the automated check can set up this network configuration once and then check all related cases in a row. Such default states, which do not represent a system default, can be integrated into an aspect-based recovery mechanism. In addition, using the aspect-based recovery mechanism in some types of test execution provides additional benefits beyond restoring from a system unknown state, as discussed in more detail below. [0107] UnterBezugnahme auf 8 istein Ablaufdiagramm einer zweiten Ausführungsform von möglichen Zuständen einschließlich eines übergeordnetenZustands beim Prü-feneiner Anwendung gezeigt. Im Kontext des automati-sierten Prüfens können verschiedenstePrüfprogrammeun-terschiedliche Merkmale der Anwendung unter Prüfung prüfen. EinSatz von Prüfprogrammenkann von einem ers-ten gemeinsamen Ausgangspunkt beginnen, während einzweiter Satz von Prüfprogrammenvon einem zweiten ge-meinsamen Ausgangspunkt beginnen kann. Der übergeordne-teZustand kann somit einen gemeinsamen Ausgangspunkt für eine Serievon Prüfungendarstellen, der sich vom Systemvoreinstellungszustand in zumindesteeinem Aspekt unterscheidet. Zum Beispiel kann ein Zustandsübergangzwischen der Systemvoreinstellung und dem übergeordne-ten Zustand definertwerden, der dem Zustandsübergangfür dieVorbedingung einer Prüfungsehr ähnlichist. Wie in 8 gezeigtkann ein Programm ausgeführtwerden, damit das System vom Systemvoreinstellungszu-stand zum übergeordnetenZustand übergeht.Vom überge-ordnetenZustand kann ein Vorbedingungsprogramm (Vorbe-dingung N) ausgeführt werden,um die Einrichtung fürdas Prüfungsskript(PrüfungsskriptN) vorzunehmen. Nachdem Ausführendes Prüfungsskriptskann ein Nachbedingungsprogramm (Nachbedingung N) ausgeführt werden,um zum übergeordnetenZustand zurückzukehren.With reference to 8th A flowchart of a second embodiment of possible states, including a superordinate state when testing an application, is shown. In the context of automated testing, a wide variety of test programs can test different features of the application under test. One set of test programs can start from a first common starting point, while a second set of test programs can start from a second common starting point. The superordinate state can thus represent a common starting point for a series of tests, which differs from the system default state in at least one aspect. For example, a state transition can be defined between the system default and the higher-level state, which is very similar to the state transition for the precondition of a test. As in 8th as shown, a program can be executed so that the system changes from the system default state to the higher state. A precondition can be of the superordinate state program (Prerequisite N) to set up the test script (test script N). After executing the check script, a post-condition program (post-condition N) can be run to return to the parent state. [0108] UnterBezugnahme auf 9 istein Ablaufdiagramm mit mehreren übergeordnetenZuständenbeim Prüfeneiner An-wendung gezeigt. Nach dem Einschalten des Systems kannsich das System im Systemvoreinstellungszustand befin-den. Vom SystemvoreinstellungszustandkönnenProgramme ausgeführtwerden, um das System in einen beliebigen von mehreren übergeordneten Zuständen zustellen, vom übergeordneten Zustand 1,vom übergeordnetenZustand 2, ... bis zum übergeordnetenZustand M. Von den überge-ordneten Zuständen können Prüfungen ausgeführt werden.Zum Beispiel kann der Prüfungsfall(Test Case, TC) 1.1 vom übergeordneten Zustand 1 ausgeführt werden.With reference to 9 a flowchart is shown with several superordinate states when testing an application. After turning on the system, the system may be in the system default state. Programs can be run from the system default state to place the system in any of several higher states, from the higher state 1 , from the superordinate state 2 , ... up to the superordinate state M. Tests can be carried out from the superordinate states. For example, the test case (TC) 1.1 from the superordinate state 1 be carried out. [0109] UmTC 1.1 auszuführen,kann ein Vorbedingungsprogramm (VorBeding 1.1) ausgeführt werden,um das System in die richtige Vorbedingung zum Ausführen vonTC 1.1 zu stel-len. Danach kann TC 1.1 ausgeführt werden,wonach ein Nachbedingungsprogramm (NachBeding 1.1) ausgeführt wer-denkann, um den Zustand des Systems zum übergeordneten Zustand 1 zurückzuführen. Fernerkann wie in 9 gezeigtjede beliebige Anzahl von Prüfungsfällen voneinem übergeordnetenZustand ausgeführtwerden. Zum Beispiel könnenmehrere Prüfungsfälle wieetwa TC 1.1, TC 1.2 ... TC 1.N vom übergeordnetenZustand 1 ausge-führtwerden. Darüberhinaus könnenmehrere Prüfungsfälle vonanderen übergeordnetenZuständenim System ausgeführtwerden, wie etwa TC 2.1, der vom übergeord-neten Zustand 2 ausgeführt wird,oder TC M.0, der vom übergeordnetenZustand M ausgeführtwird.To TC 1.1 a precondition program (precondition 1.1 ) are run to get the system into the correct condition to run TC 1.1 to deliver. After that, TC 1.1 are executed, after which a post-condition program (post-condition 1.1 ) can be carried out to change the state of the system to the superordinate state 1 due. Furthermore, as in 9 shown any number of test cases can be run from a higher level. For example, multiple exam cases such as TC 1.1 , TC 1.2 ... TC 1.N from the superordinate state 1 be carried out. In addition, several test cases can be executed from other higher-level states in the system, such as TC 2.1 that of the superordinate state 2 is executed, or TC M.0, which is executed by the superordinate state M. [0110] Wieoben besprochen ermöglichtder auf Aspekten basierende Wiederherstellungsmechanismus ein Stellendes Systems in jeden beliebigen Zustand. Dies gestattet, dass dasSystem von einem unbekannten Zustand zu einem bekannten Zustandoder von einem bekannten Zustand zu einem zweiten bekannten Zustandverändertwird. Im Kontext des Prüfensmehrerer Prüfungsfälle mitmehreren übergeordnetenZuständen kanndie auf Aspekten basie-rende Wiederherstellung verwendet werden,um die Prüfungsfälle in einerleistungsfähigerenund geradlinige-ren Weise auszuführen.Howdiscussed above enablesthe aspect-based recovery mechanismof the system in any state. This allows theSystem from an unknown state to a known stateor from a known state to a second known statechangedbecomes. In the context of testingseveral test cases withseveral parentStates canAspect-based recovery is usedto the exam cases in onemore powerfulin a more straightforward way. [0111] EinPrüfungsrahmenkann die Abfolge der Prüfungsfälle in jederbeliebigen Abfolge ausführen.Ein Ansatz ist, Prüfungsskripte,die zum gleichen übergeordnetenZu-stand gehören,auszuführen.Zum Beispiel kann der Prü-fungsrahmennach der erfolgreichen Ausführungeines PrüfungsskriptsX.Y einen übergeordnetenZustand X wie-derherstellen, wenn das nächste Prüfungsskript von der Art X.Zist, ohne durch die Systemvoreinstellung zu verlaufen. Die Ausführung kannin einer solchen Weise organisiert sein, dass viele Prüfungsskripte, diezu einem übergeordnetenZustand X gehören,in direkter Abfolge zur Ausführungeingeteilt sind. Ein anderer An-satz ist, die Prüfungsskripte ohne Berücksichtigungder übergeordnetenZustände,zu denen die Prüfungsskriptegehören,in jeder beliebigen Reihenfolge auszuführen. Die Abfolge kann zufällig odersystematisch gewähltwerden. Der auf Aspekten basierende Wiederherstellungs-mechanismuskann verwendet werden, um jeden Satz von Prüfungsskripten ungeachtet derAbfolge auszuführen.Ontesting frameworkcan the sequence of exam cases in eachexecute any sequence.One approach is exam scripts,the same parentInclude stateperform.For example, the exam frameworkafter successful executionan exam scriptX.Y a parentRestore state X when the next test script of the type X.Zwithout going through the system default. The execution canbe organized in such a way that many exam scripts thatto a parentState X includein direct succession to executionare divided. Another approach is to take the exam scripts without considerationthe parentConditions,to which the exam scriptsbelong,run in any order. The sequence can be random orsystematically chosenbecome. The aspect-based recovery mechanismcan be used to read any set of exam scripts regardless ofExecute sequence. [0112] UnterVerwendung des in 9 gezeigtenBeispiels kann eine Prüfungsabfolge,die TC 1.1 und TC 2.1 verwendet, ausgeführt werden.Nach dem Ausführenvon TC 1.1 befindet sich das System im übergeordneten Zustand 1.Um TC 2.1 auszuführen,muß sichdas System im über-geordnetenZustand 2 befinden. Anstelle des Schaffens eines besonderenProgramms fürden Übergangvom überge-ordnetenZustand 1 zum übergeordnetenZustand 2 oder eines manuellen Abänderns des Zustands des Systemskann vielmehr die auf Aspekten basierende Wiederherstellung verwendetwerden, um den Zustand des Systems zu verän-dern. Im Besonderen kannder Zustand des Systems durch Verändern verschiedenster Aspekteverändertwerden. Der Zustand des Systems kann zu einem Zwischenzustand wieetwa der Systemvoreinstellung (nach der ein Programm ausgeführt werdenkann, um den Zustand des Systems zum übergeordneten Zustand 2 zuverändern) verändert werdenoder kann direkt zum nächstenZustand (wie etwa direkt vom übergeordnetenZustand 1 zum übergeordnetenZustand 2) verändertwerden. Damit muß dieAbfolge von Prü-fungsfällen nichtdarauf beschränktwerden, nur Prüfungsfälle auszuführen, dievom gleichen übergeordnetenZustand beginnen. Vielmehr kann ungeachtet des überge-ordneten Zustands, aufdem der Prüfungsfallbasiert, jede beliebige Abfolge oder Reihenfolge von Prüfungsfällen ausgeführt werden.Darüberhinaus kann der auf Aspekten basierende Wiederherstellungsmechanismusim Fall des Eintretens des Systems in einen unbekannten Zustandverwendet werden, um das System wie oben besprochen in jeden beliebigenbekannten Zustand wie etwa den Systemvoreinstellungszustand zu stellen.Using the in 9 The example shown can be a test sequence, the TC 1.1 and TC 2.1 used to be executed. After running TC 1.1 the system is in the higher-level state 1 , To TC 2.1 to execute, the system must be in a superordinate state 2 are located. Instead of creating a special program for the transition from the superordinate state 1 to the superordinate state 2 or manually changing the state of the system, aspect-based recovery can be used to change the state of the system. In particular, the state of the system can be changed by changing various aspects. The state of the system can become an intermediate state such as the system default (after which a program can be run to change the state of the system to the higher state) 2 to be changed) or can be changed directly to the next state (such as directly from the superordinate state 1 to the superordinate state 2 ) to be changed. This means that the sequence of test cases does not have to be limited to only carrying out test cases that start from the same superordinate state. Rather, regardless of the overall state on which the test case is based, any sequence or sequence of test cases can be executed. In addition, in the event of the system entering an unknown state, the aspect-based recovery mechanism can be used to place the system in any known state, such as the system default state, as discussed above. [0113] DasSystem kann durch den Systemvoreinstellungszustand hindurchgehen,wenn Prüfungenmit unterschiedlichen übergeordnetenZuständen(wie etwa TC 1.1 und TC 2.1) ausgeführt werden.Auf diese Weise müssenkeine Pro-gramme fürdirekte Übergänge zwischen übergeordnetenZuständenausgeführtwerden; derartige Übergänge können über denSystemvoreinstellungszustand vorgenommen wer-den. Dies verringert dieAnzahl der zu programmierenden Übergänge von(2n)! auf 2n, wobei n die Anzahl der ü-bergeordneten Zustände ist.In diesem Kontext bezieht sich "Übergang" auf einen oder mehrereAspektübergänge proZustandsübergang.Darüberhinaus kann der Systemvoreinstellungszustand verwendet werden, wenndas automatisierte Prüfenin einen unbekannten Zustand ein-tritt. Im Besonderen müssen keineWiederherstellungs-programme zu übergeordnetenZuständenausgeführtwer-den; in Fall eines unvorhersehbaren Anwendungsverhal-tens kehrtdas Automatisierungssystem zur Systemvorein-stellung zurück. Schließlich können Aspektveränderungenfür dieSystemvoreinstellungswiederherstellungsprogramme genutzt werden,um für Rückübergänge von übergeordnetenZuständenzum Systemvoreinstellungszustand zu sorgen. Bei einer Ausführung über dasSystem hinweg fälltdie Anzahl der Übergänge zu übergeordnetenZuständen,die ausgeführt werdenmüssen,auf n.The system can go through the system default state when tests with different superordinate states (such as TC 1.1 and TC 2.1 ) are carried out. In this way no programs need to be executed for direct transitions between superordinate states; such transitions can be made through the system default state. This reduces the number of transitions to be programmed from (2n)! to 2n, where n is the number of superordinate states. In this context, "transition" refers to one or more aspect transitions per state transition. In addition, the system default state can be used when the automated test enters an unknown state. In particular, there is no need to run recovery programs to superordinate states; in the event of an unpredictable application behavior, the automation system returns to the system default. Finally, aspect changes can be used for the system default recovery programs to provide transitions from parent states to the system default state. When running across the system, the number of high-level transitions that must be performed drops to n. [0114] Umzwischen dem Systemvoreinstellungszustand und einem übergeordnetenZustand überzugehen, können dieAspekte, die sich zwischen dem übergeordnetenZustand und dem Systemvoreinstellungszustand unterscheiden, identifi-ziertwerden. Eine Funktion zum Verändernoder Abänderndieser sich unterscheidenden Aspekte kann verwendet werden, um denZustand des Systems zu verändern,wie etwa das Verändern dersich unterscheidenden Aspekte zu Voreinstellungszustandsaspekten,um zum Voreinstel-lungszustand überzugehen,oder das Verändernder sich unterscheidenden Aspekte zu Aspekten des übergeordnetenZustands, um zum übergeordnetenZustand überzugehen.Die Übergangsprogrammekönnengenerische Programme sein, die jeden der Aspekte im System zum Voreinstel-lungszustand übergehenlassen. Um diesen Übergangnoch leichtgewichtiger zu machen, könnte alternativ ein Wie-derherstellungsprogrammermächtigt werden,die Aspekte in einem übergeordnetenZustand, der sich vom System-voreinstellungszustand unterscheidet,abzufragen. Das Wiederherstellungsprogramm kann dann nur versuchen,diese sich unterscheidenden Aspekte zum Systemvoreinstellungszustandzurückzu verändern,wenn es aufgefor-dert wird, von einem übergeordneten Zustand zum Systemvoreinstellungszustand überzugehen.Aroundbetween the system default state and a parentState can passAspects that differ between the parentDifferentiate state and system default state, identifiedbecome. A function to changeor changeThese differing aspects can be used to understand theChange state of the systemsuch as changing thedifferent aspects from preset state aspects,to go to the default stateor changingof the differing aspects to aspects of the parentState to go to the parentState to pass.The transition programscanbe generic programs that transition each of the aspects in the system to the default stateto let. About this transitionAlternatively, a recovery program could make it even lighterbe empoweredthe aspects in a parentState that differs from system default statequery. The recovery program can then only trythese differing aspects of the system default statebackto change,when prompted to transition from a parent state to the system default state. [0115] 10 zeigt eine mögliche Klassenstrukturfür eineAusführungeines auf Aspekten basierenden Wiederherstellungsmechanismus ineiner objektorientierten Sprache, die die Verwendung von übergeordnetenZuständengestattet. Die in 10 gezeigteKlassenstruktur un-terscheidet sich vom in 4 gezeigten Beispiel. Zum Beispiel machtdie in 10 gezeigteKlassenstruktur von Vererbung Gebrauch. Wie in 10 gezeigt besitzt die Klasse AspektÜbergangsowohl einen Zeiger zu einem Übergangals auch ein Nachprüfungsprogramm.Die Klassen VorbedingungsZustand und ÜbergeordneterZustand können verwendetwerden, um zuerst Ersteres und dann Letzeres auszuführen, während dieKlassen NachbedingungsZustand und SystemVoreinstellungsZustand dieseProgramme in unterschiedlicher Reihenfolge verwenden können, wiedies oben besprochen ist. 10 shows a possible class structure for executing an aspect-based recovery mechanism in an object-oriented language that allows the use of superordinate states. In the 10 class structure shown differs from in 4 shown example. For example, the in 10 shown class structure of inheritance use. As in 10 shown the aspect transition transition has both a pointer to a transition and a review program. The PreconditionState and ParentState classes can be used to do the former first and then the latter, while the PostConditionState and SystemStateState classes can use these programs in different orders, as discussed above. [0116] 11 und 12 sind Ablaufdiagramme, die zeigen,wie die Klassenstruktur von 10 arbeitenkönnte. 11 ist ein Ablaufdiagrammfür dasobjektorientierte Codieren in 10 ohneFeststellung eines abnormalen Verhaltens wäh rend der Ausführung einerPrüfung.Vor der Ausführungdes automatisierten Prüfenskann eine Initialisierung des auf Aspekten basierenden Wiederherstellungsmechanismusdurchgeführtwerden. Nach der Initialisierung kann das Prüfen beginnen. Wie in 11 gezeigt überprüft der aufAspekten basierende Wiederherstellungsmechanismus den übergeordnetenZustand fürdie nächstePrüfung.Wenn der übergeordneteZustand fürdie nächstePrüfungder gleiche wie der übergeordneteZustand fürdie vorherige Prüfung ist,ist keine auf Aspekten basierende Wiederherstellung notwendig. Wennsich der übergeordneteZustand für dienächstePrüfungvom übergeordnetenZustand fürdie vorherige Prüfungunterscheidet, kann eine auf Aspekten basierende Wie-derherstellungverwendet werden. Wenn zum Beispiel zu-erst TC 1.1 ausgeführt wurde,handelt es sich beim ü-bergeordnetenZustand um den übergeordnetenZustand 1. Wenn danach TC 2.1 ausgeführt werdensoll, ist der ü-bergeordneteZustand der übergeordneteZustand 2, was bedeutet, dass vor der Ausführung vonTC 2.1 ein Zu-standsübergangvom übergeordnetenZustand 1 vorgenommen wird. 11 and 12 are flowcharts showing how the class structure of 10 could work. 11 is a flowchart for object-oriented coding in 10 without detecting abnormal behavior while running an exam. Initialization of the aspect-based recovery mechanism can be performed before performing automated checking. Testing can begin after initialization. As in 11 shown, the aspect-based recovery mechanism checks the parent state for the next check. If the parent state for the next exam is the same as the parent state for the previous exam, no aspect-based recovery is necessary. If the parent state for the next check differs from the parent state for the previous check, an aspect-based restore can be used. For example, if TC first 1.1 executed, the higher-level state is the higher-level state 1 , If afterwards TC 2.1 the higher-level state is the higher-level state 2 , which means that before running TC 2.1 a state transition from the superordinate state 1 is made. [0117] Wiein 11 gezeigt hat esden Anschein, dass sich der übergeordneteZustand fürdie gegenwärtige Prüfung vonder vorherigen Prüfungunterscheidet. Im Besonderen liefert die Anfrage „Ist (letzterÜbergeordneterZustand== "X") " "falsch" zurück,was bedeutet, dass in der vorherigen Prüfung ein unterschiedlicher übergeordneterZustand verwendet worden war. Das bedeutet, dass ein anderer übergeordneterZustand vom letzten Lauf zurück-gebliebenwar.As in 11 has shown that the overall condition for the current exam is different from the previous exam. In particular, the query "Is (last parent state ==" X ") " Returns "incorrect", which means that a different parent state was used in the previous check. This means that another parent state returned from the last run - stayed. [0118] Wieoben besprochen verläuftein Weg, um von einem übergeordnetenZustand zu einem anderen überzugehen, ü-ber denSystemvoreinstellungszustand. Wie in 11 gezeigtverwendet der Übergangzum Systemvoreinstel-lungszustand die Funktion "VerlasseÜbergeordneten-Zustand()". Danach wird dieFunktion "StelleFest()" verwendet, um nachzuprüfen, dasssich das System im Systemvoreinstellungszustand befindet. Wie obenbespro-chen ist eine Weise, auf die nachgeprüft wird, ob sich das Systemin einem vorbestimmten Zustand wie etwa dem Systemvoreinstellungszustandbefindet, das Vergleichen der Aspekte des gegenwärtigen Zustands mit bekanntenAspekten. Wenn die Aspekte des gegenwärtigen Zustands einem bekanntenZustand wie etwa dem Systemvoreinstel-lungszustand entsprechen,wird angenommen, dass sich das System im Systemvoreinstellungszustandbefindet. Wie in 11 gezeigtwurde das System als im System-voreinstellungszustand befindlichverifiziert.As discussed above, one way to transition from one parent state to another is through the system default state. As in 11 shown, the transition to the system default state uses the "Exit Parent State ()" function. After that the function PlaceFest () used to verify that the system is in the system default state. As discussed above, one way to check whether the system is in a predetermined state, such as the system default state, is to compare the aspects of the current state with known aspects. If the aspects of the current state correspond to a known state such as the system default state, the system is assumed to be in the system default state. As in 11 the system has been verified to be in the system default state. [0119] Hinsichtlichdes automatisierten Prüfensist ein Verfahren, zu einem Zustand überzugehen und dann einen,einige oder alle der Aspekte des übergeordneten Zu-stands hinterhernachzuprüfen.Somit ist das Paradigma, einen Zustand vorauszuplanen, die Funktion "Erlange()" aufzurufen, um ihnzu erlangen, und dann die Annahme unter Verwendung von "StelleFest()" nachzuprüfen. Die-serMethodik folgend wird das System unter Verwendung des Befehls "Erlange()" zum übergeordnetenZustand "X" überführt. Der Befehl "Erlange()" kann das Bestimmen,welche Aspekte des Systems sich im übergeordneten Zu-stand "X" vom Systemvoreinstellungszustand unterschei-den,und das Verändernjener Aspekte umfassen. Danach wird der gegenwärtige Zustand des Systems unterVerwen-dung des Befehls "Stelle-Fest()" überprüft, um zu bestimmen, dass sich dasSystem im übergeordnetenZu-stand "X" befindet. Wie in 11 gezeigt wurde veri-fiziert,dass sich das System im übergeordnetenZustand "X" befindet, fallsder Befehl "StelleFest()" „wahr" liefert. Falls eine der Funktions-Aufrufefalsch lie-fert, wird die Wiederherstellung gestartet.Regarding automated testing, one method is to transition to a condition and then review one, some, or all of the aspects of the overarching condition. So the paradigm is to plan a state ahead, call the "Get ()" function to get it, and then check the assumption using "PlaceFest ()". Following this methodology, the system is transferred to the higher-level state "X" using the "Get ()" command. The "Get ()" command may include determining which aspects of the system differ from the system default state in the parent state "X", and changing those aspects. The current state of the system is then checked using the "Station Fixed ()" command to determine that the system is in the "X" state. As in 11 it has been verified that the system is in the higher state "X" if the command "StelleFest ()" returns "true". If one of the function calls delivers incorrectly, the recovery is started. [0120] Fernerwird die Variable "Bezeichnungdes letzten übergeordnetenZustands" mit "X" festgesetzt, um anzugeben, dass dasgegenwärtigausgeführtePrüfprogrammeine Standardeinstellung von "X" aufwies. Dies gestattetdas Speichern des übergeordnetenZustands der gegenwärtigausgeführtenPrüfung,der mit dem übergeordnetenZu-stand der nachfolgend ausgeführtenPrüfungverglichen werden kann. Die Vorbedingung für die Prüfabfolge wird unter Verwendungdes Befehls "Erlange()" ausgeführt. ZumBeispiel kann VorBeding 1.1 ausgeführt werden. Da-nach wird dergegenwärtigeZustand des Systems unter Verwendung des Befehls "StelleFest()" überprüft, um zu bestimmen, dass sichdas System im Zustand zur Ausfüh-rungvon TC 1.1 befindet. Nachdem die Prüfung (wie etwa TC 1.1)ausgeführtist, kann unter Verwendung des Be-fehls "Verlasse()" ein Nachbedingungsprogramm ausge-führt werden,um zum übergeordnetenZustand "X" zurück-zukehren.Zum Beispiel kann "NachBeding 1.1" von 9 verwendet werden, um zum übergeordnetenZustand 1 zu-rückzukehren.Schließlichwird der gegenwärtigeZustand des Systems unter Verwendung des Befehls "StelleFest()" überprüft, um zu bestimmen, dass sichdas System im ü-bergeordnetenZustand "X" befindet. Fallsdie Vorbedin-gung (VorBeding 1.1) einen übergeordnetenZustand anzeigt, nimmt der „ZustandManager" an, dass die Nachbe-dingung(NachBeding) zum selben übergeordnetenZustand statt zum SystemVoreinstellungsZustand zurückkehrt.Da-her wird der Vorgenannte anstatt des SystemVoreinstel-lungsZustandfestgestellt.Furthermore, the variable "designation of the last higher-level status" is set with "X" to indicate that the test program currently being executed had a standard setting of "X". This allows the superordinate state of the test currently being carried out to be stored, which can be compared with the superordinate state of the test carried out subsequently. The precondition for the test sequence is executed using the "Get ()" command. For example, VorBeding 1.1 be carried out. Thereafter, the current state of the system is checked using the "PlaceFest ()" command to determine that the system is in the state of executing TC 1.1 located. After the exam (such as TC 1.1 ), a post-condition program can be executed using the "Exit ()" command in order to return to the higher-level state "X". For example, "AfterCondition 1.1 " of 9 used to go to the parent state 1 to return. Finally, the current state of the system is checked using the "PlaceFest ()" command to determine that the system is in the parent state "X". If the precondition (precondition 1.1 ) indicates a higher-level status, the "State Manager" assumes that the post-condition (post-condition) returns to the same higher-level status instead of the system default status. Therefore, the aforementioned is determined instead of the system default status. [0121] Somitzeigt 11 ein Beispieleiner normalen Ausführungeines Prüfprotokolls,das den auf Aspekten basierenden Wiederherstellungsmechanismus verwendenkann.Thus shows 11 an example of normal execution of an audit trail that can use the aspect-based recovery mechanism. [0122] 12 ist ein Ablaufdiagrammfür dieobjektorientierte Gestaltung in 10 mitabnormalem Verhalten und Wiederherstellung. 12 zeigt einen Befehl "StelleFest()", der versucht, denZustand des Systems nachzuprüfen.Der Befehl "StelleFest()" kann an jedem beliebigenPunkt im Prüfvorgangwie etwa beim Eintreten in einen übergeordneten Zustand, einenVorbedingungszu-stand, einen Postprüfungsskriptzustand, einen Nachbe-dingungszustandusw. verwendet werden. Wie in 12 gezeigtgibt der Befehl "StelleFest()" eine "Falsch"anzeige zurück, wasbedeutet, dass sich der Zu-stand des System nicht in einem erwartetenZustand be-findet. Zum Beispiel gibt der Befehl "StelleFest()" ei-ne "Falsch"anzeige zurück, wenn erwartet wird, dasssich das System im übergeordnetenZustand 1 befindet und die Aspekte jenen des übergeordnetenZustands 1 nicht entsprechen. In diesem Fall kann die Funktion "Wiederherstellung()" des auf Aspektenbasierenden Wie-derherstellungsmechanismus verwendet werden, umdie Systemverwendung zu einem bekannten Zustand wie etwa den Systemvoreinstellungszustandwiederherzustellen. Der Wiederherstellungsmechanismus kann der wieoben of-fenbarte sein und versuchen, die Aspekte des Systems zurSystemvoreinstellung zurückzu verändern.Dieses Verändernder Aspekte kann wie oben besprochen iterativ durchgeführt werden. DieFunktion „Wiederherstellung()" durchläuft alleverfügbarenAspektÜbergangObjekteund startet deren Wiederherstellungs-Prozeduren. 12 is a flowchart for object-oriented design in 10 with abnormal behavior and recovery. 12 shows a command "StelleFest ()", which tries to check the state of the system. The PlaceFest () command can be used at any point in the review process, such as entering a parent state, a pre-condition state, a post-check script state, a post-condition state, and so on. As in 12 shown the command "StelleFest ()" returns a "false" display, which means that the state of the system is not in an expected state. For example, the command "StelleFest ()" returns a "false" display if the system is expected to be in a higher state 1 and the aspects of those of the higher state 1 do not match. In this case, the restore () function of the aspect-based restore mechanism can be used to restore the system usage to a known state, such as the system default state. The recovery mechanism may be the one disclosed above and attempt to change the aspects of the system back to the system default. This change of the aspects can be carried out iteratively as discussed above. The "Restore ()" function runs through all available aspect transition objects and starts their restoration procedures. [0123] Nachdem Ausführender Funktion "Wiederherstellung()" wird der Befehl "StelleFest()" verwendet, um nachzuprü-fen, obdas System zum Systemvoreinstellungszustand zu-rückgekehrt ist. Fall dies zutrifft,kann das automati-sierte Prüfendamit fortsetzen, dass die Aspekte des Systems zum übergeordnetenZustand des nächstenausge-führtenPrüfungsskriptsverändertwerden. Fall dies nicht zutrifft, kann eine aggressivere Wiederherstellungnötig sein.Mehrere Arten der aggressiveren Wie-derherstellung sind oben offenbart.Eine Art der agressiveren Wiederherstellung ist das Chemotherapie-Programm.Nachdem das Chemotherapie-Programm ausgeführt ist, wird der Befehl "StelleFest()" verwendet, um nach-zuprüfen, obdas System zum Systemvoreinstellungszustand zurückgekehrt ist.After executing the Restore () function, the JobFix () command is used to verify that the system has returned to the system default state. If this is the case, the automated checking can continue by changing the aspects of the system in relation to the higher-level status of the next check script to be executed. If this is not the case, a more aggressive how manufacturing may be necessary. Several types of more aggressive restoration are disclosed above. One type of more aggressive recovery is the chemotherapy program. After the chemotherapy program is executed, the command "PlaceFest ()" is used to check whether the system has returned to the system default state. [0124] Obwohldie Erfindung in Verbindung mit den bevorzugten Ausführungsformengezeigt und beschrieben wurde, ist offensichtlich, dass von dengrundlegenden Merkmalen dieser Erfindung ausgehend Veränderungenund Abänderun-genzusätzlichzu den oben erwähntenvorgenommen werden können.Die auf Aspekten basierende Wiederherstellung kann auf eine Vielfaltvon Produkten wie etwa auf Soft-ware basierende Produkte, auf Hardwarebasierende Pro-dukte oder auf Software/Hardware basierende Produkteangewandt werden, um den Zustand des Produkts an jedem beliebigenPunkt seiner Betriebsdauer, vom automatisierten Prüfen desProdukts bis zum Betrieb im prakti-schen Einsatz, zu bestimmen.Ferner kann die auf Aspek-ten basierende Wiederherstellung den Zustanddes Pro-dukts abändern,wie etwa von einem unbekannten Zustand zu einem bekannten Zustand(z.B. dem Voreinstellungszustand).Even thoughthe invention in connection with the preferred embodimentshas been shown and described, it is evident that of thefundamental features of this invention based on changesand changesadditionallyto the abovecan be made.Aspect based restoration can be diversefrom products such as software-based products to hardwarebased products or software / hardware based productsapplied to the condition of the product at anyPoint of its operating time, from the automated checking of theTo determine the product up to operation in practical use.Furthermore, the aspect-based restoration can restore the statechange the product,such as from an unknown state to a known state(e.g. the default state). [0125] Zusätzlich gibtes viele verschiedene Arten von Computersoftware und -hardware,die bei der praktischen Ausführungder Erfindung verwendet werden können,und die Erfindung ist nicht auf die oben beschriebenen Beispielebeschränkt.Die Erfindung wurde unter Bezugnahme auf Handlungen und symbolischeDarstellungen von Tätigkeitenbeschrieben, die durch eine oder mehrere elektronische Vorrichtungendurchgeführt werden.Somit wird sich verstehen, dass derartige Handlungen und Tätigkeitendie Beeinflussung von elektrischen Signalen, die Daten in einerstrukturierten Form darstellen, durch die Verarbeitungseinheit derelektronischen Vorrichtung bein-halten. Diese Beeinflussung verwandeltdie Daten oder bewahrt sie an Stellen im Speichersystem der elektronischenVorrichtung, was den Betrieb der elektronischen Vorrichtung in einerWeise, die von Fachleuten wohlverstanden wird, neukonfiguriert oderauf andere Weise ändert.Die Datenstrukturen, in denen die Daten bewahrt werden, sind physischeStellen des Speichers, die bestimmte Eigenschaften aufweisen, welchedurch das Format der Daten definiert sind. Obwohl die Erfindungim vorhergehenden Kontext beschrieben wurde, soll dieser nicht beschränkend sein,da der Fachmann verstehen wer-den, dass die beschriebenen Handlungenund Tätigkeitenauch in der Hardware ausgeführtwerden können.Demgemäß ist esdie Absicht der Anmelder, alle Veränderungen und Abänderungeninnerhalb des gültigenUmfangs der vorliegenden Erfindung zu schützen. Die Erfindung soll durchdie folgenden Ansprücheeinschließlichaller Entsprechungen definiert werden. In addition therethere are many different types of computer software and hardware,the in the practical executionthe invention can be usedand the invention is not limited to the examples described abovelimited.The invention has been described with reference to acts and symbolicRepresentations of activitiesdescribed by one or more electronic devicesbe performed.Thus it will be understood that such actions and activitiesinfluencing electrical signals, the data in onerepresent structured form by the processing unit of theelectronic device. This influence transformsthe data or keep it in places in the electronic storage systemDevice, which is the operation of the electronic device in aWay reconfigured or well understood by professionalschanges in other ways.The data structures in which the data is kept are physicalLocations of memory that have certain properties whichare defined by the format of the data. Although the inventionwas described in the previous context, it should not be limiting,since those skilled in the art will understand that the actions describedand activitiesalso executed in hardwarecan be.Accordingly it isthe intention of the notifier, all changes and alterationswithin the validTo protect the scope of the present invention. The invention is intended tothe following claimsincludingall correspondences are defined. [0126] Wieder txtExplorer verwendet wird:Howthe txtExplorer is used: [0127] DertxtExplorer kann in drei unterschiedliche Modi ver-wendet werden: a- Befehlszeilenmodus Alle Befehle, diein der Befehlszeile gegeben werden, werden in ihrer Reihenfolgeausgeführt.Jedem Befehl muß ein "-" vorangehen. Beispiel: txtexplorer-d meineDatenbank -AuflistungPatienten wird das Werkzeug aufrufen,die Datenbank "meineDaten-bank" öffnen, und alle Patienten indieser Datenbank auflisten. b- Interaktiver Modus mit dem Befehlszeilenargument "-i" schaltet das Werk-zeugin den interaktiven Modus. Hier werden alle Befeh-le in einer schalenartigenUmgebung eingegeben. Vor je-dem beliebigen Befehl muß kein "-" eingegeben werden. Beispiel: txtexplorer-d meineDatenbank -i wird das Werkzeug aufrufen, die Datenbank "meineDaten-bank" öffnen, und in den interaktivenModus schalten. >> AuflistungPatientenwird alle Patienten auflisten. c- Dateimodus Im Dateimodus werden alle Befehle aus einerDatei gele-sen. Die Syntax ist die gleiche wie beim interaktivenModus. Beispiel: txtexplorer -Datei meineDatei wird das Werkzeugaufrufen, in den Dateimodus schalten und alle Befehle in der Datei "meineDatei" ausführen. The txtExplorer can be used in three different modes: a- Command line mode All commands given on the command line are executed in their order. Each command must be preceded by a "-". Example: txtexplorer -d myDatabase listingPatients will call the tool, open the "myDatabase" database, and list all patients in this database. b- Interactive mode with the command line argument "-i" switches the tool to interactive mode. All commands are entered here in a shell-like environment. No "-" must be entered before any command. Example: txtexplorer -d myDatabase -i will call the tool, open the database "myDatabase" and switch to interactive mode. >> Listing patient will list all patients. c- File mode In file mode, all commands are read from a file. The syntax is the same as in interactive mode. Example: txtexplorer -file myfile will call the tool, switch to file mode and execute all commands in the file "myfile". [0128] AllenModi gemeinsam ist: – Befehle und Argumente müssen durcheine oder mehrere Leerschritte getrennt sein. – Befehlesind nicht fallsensitiv. – Befehlekönnenabgekürztwerden, doch sollte man sich Zweideutigkeiten bewußt sein. – Wennein Argument Leerschritte enthält,muß dasange-führtsein (Beispiel: "Argumentmit Leerschritten"). – Listenerweiterung:Wenn ein Befehl eine LegionObjektkennung benötigt, kann man auch den Listenindex desvorher ausgeführtenListxx-Befehls eingeben. Ein "#" bezeichneteine Bemerkung bis zum Ende der Zei-le. – Attributliste:Auf Attribute in () kann durch die generische Schnittstelle nichtzugegriffen werden, so dass sie nicht abänderbar sind. Common to all modes: - Commands and arguments must be separated by one or more spaces. - Commands are not case sensitive. - Orders can be shortened, but one should be aware of ambiguities. - If an argument contains spaces, this must be mentioned (example: "Argument with spaces"). - List extension: If a command requires a Legion object identifier, you can also enter the list index of the Listxx command previously executed. A "#" denotes a comment up to the end of the line. - Attribute list: Attributes in () cannot be accessed through the generic interface, so they cannot be changed. [0129] Rufedas Werkzeug auf, öffnedie Datenbank <dbname> und gehe in den interaktivenModus: txtExplorer -d <dbname> -iCall the tool, open the database <dbname> and go into interactive mode: txtExplorer -d <dbname> -i [0130] Listealle verfügbarenBefehle auf: helpList all available commands: help [0131] Listealle Patienten in der Datenbank auf: listpatientsList all patients in the database: list patients [0132] Wähle denersten Patienten in der Liste und erstelle einen Speicherauszugder gesamten Baumstruktur: list 1Select the first patient in the list and create a snapshot of the entire tree structure: list 1 [0133] SchalteModus um: erstelle Speicherauszug nur von Att-ributen mit einemWert: nulls offSwitch mode: only dump att-ributes with a value: nulls off [0134] ErstelleSpeicherauszug aller Patienten und ihrer Baumstrukturen: listpatients forall%pat {list %pat}Dump all patients and their tree structures: list patients forall% pat {list% pat} [0135] Zeigealle CsaSpeicherDB-Stellen: liststoredbShow all CsaSpeicherDB positions: liststoredb [0136] Schaffeeine neue CsaSpeicherDB-Stelle in c:TEMP: createstoredb mystoredbc:TEMPCreate a new CsaSpeicherDB location in c: TEMP: createstoredb mystoredb c: TEMP [0137] Ladeeine Abbildung in die Datenbank: load c:myimagesct01.imgLoad an image into the database: load c: myimages ct01.img [0138] Entladeeine Abbildung durch LegionObjektkennung und speichere sie in d:neueAbbildung.img: unload123.0.99223 d:newimage.imgUnload an image by Legion object identifier and save it in d: neueAbbildung.img: unload 123.0.99223 d: newimage.img [0139] Listealle Studien füreinen Patienten auf: liststudies 123.0.99220List all studies for a patient: liststudies 123.0.99220 [0140] Listealle Serien fürStudie Nr. 1 in der vorher ange-zeigten Liste auf, die mit ListeStudiengeschaffen wur-de: listseries 1List all series for study No. 1 in the previously displayed list, which was created with list studies: listseries 1 [0141] Listealle Abbildungen fürSerie Nr. 1 in der vorher angezeigten Liste auf, die mit ListeStudiengeschaffen wurde: listimages 1List all images for series No. 1 in the previously displayed list, which was created with list studies: listimages 1 3. Erweiternung3. Extension 1- Erzeuge eigene DLL durch Ableiten von KlassepxExplorer-Server.1- Create your own DLL by deriving classpxExplorer server. 2- Erzeuge 'Factory'.Funktion createInstance.2- Create 'Factory' function createInstance. 3- Sage Explorer welche DLL zu laden ist durch: a: Befehlszeile:txtExplorerd@myDLL -d ... b: Umgebungsveränderung: SET DLL_PXEXPLORER=mydll.dll oderSET DLL_PXEXPLORERD=mydebugdll.dll.3- Tell Explorer which DLL to load by:a: Command line:txtExplorerd @ myDLL -d ...b: Environment change: SET DLL_PXEXPLORER = mydll.dllorSET DLL_PXEXPLORERD = mydebugdll.dll. 4. Liste allerBefehle4. List allcommands : help- liste alle Befehle auf : help- list all commands help: help – listealle Befehle aufhelp: help - listall commands on session: stelle Sitzungsmodus auf pessimistisch (= Voreinstellung)oder optimistisch. Muß vordem Öffnender ersten Datenbank verwendet werden!session: set session mode to pessimistic (= default)or optimistic. Must beforeopeningthe first database! open: gleich wie -dopen: same as -d d: öffneDatenbank Datenbanknamed: openDatabase database name medcom : öffnealle Datenbänke,die in MedCom Configu-ration definiert sindmedcom: openall databases,that are defined in MedCom Configuration setdefaultDB: stelle Datenbank <arg0> alsVoreinstellungsdatenbank einsetdefaultDB: set database <arg0> asPreferences database setdefaultLo: stelle Sperre <arg0> als Voreinstellungssperreein. Möglichsind NOLOCK, RLOCK, WLOCK (RLOCK ist die Voreinstellung)setdefaultLo: set lock <arg0> as default lockon. Possibleare NOLOCK, RLOCK, WLOCK (RLOCK is the default) getdefaultDB: hole die gegenwärtige VoreinstellungsDatenbankgetdefaultDB: get the current preferences database listDB: liste alle offene Datenbanken auflistDB: list all open databases close: schließedie Datenbank <arg0>close: closethe database <arg0> commit: übergibdie Veränderungen(dies ist die Voreinstellung, wenn das Werkzeug verlassen wird)commit: committhe changes(this is the default when the tool is exited) zapcods: übergibdie Veränderungenund bereinige die COD-Tabellezapcods: hand overthe changesand clean up the COD table rollback: nimm eine Rückführung derVeränderungenvorrollback: take a return of thechangesin front list: liste alle Instanzen auf, die sich im Closure von Loid <arg0> befindenlist: lists all instances that are in the closure of Loid <arg0> data: liste Instanzen und Daten auf (ein = Vorein-stellung)oder liste nur Instanzen auf (aus) Daten ein (Voreinstellung):liste Klassen und Attribute auf Daten aus: liste nur Klassenaufdata: list instances and data (on = default)or just list instances (off)Data on (default):list classes and attributesData from: list only classeson recurse: greife rekursiv auf den gesamten Closure zu (ein =Voreinstellung), oder nicht (aus)recurse: access the entire closure recursively (a =Default) or not (off) listPatients: liste alle CsaPatient- Instanzen auflistPatients: list all CsaPatient instances listStudies: liste alle CsaStudy- Instanzen für das gegenwärtige PatientLoid <arg0> auf listStudies: lists all CsaStudy instances for the current PatientLoid <arg0> listSeries: liste alle CsaSeries- Instanzen für das gegenwärtige CsaStudyLoid <arg0> auflistSeries: list all CsaSeries instances for the current CsaStudyLoid <arg0> listImages: liste alle CsaImage-Instanzen für das gegenwärtige CsaSeriesLoid <arg0> auflistImages: list all CsaImage instances for the current CsaSeriesLoid <arg0> check: führeeine Dicom-Semantik-Prüfungder Instanz <arg0> (und Closure) durchcheck: leada Dicom semantic examthe instance <arg0> (and closure) delete: löschedie Instanz mit Loid <arg0> und ihre Unterbaumstrukturin der Datenbankdelete: deletethe instance with loid <arg0> and its subtree structurein the database forcedelete: (erzwinge) Löschungder Instanz mit Loid <arg0> und ihrer Unterbaumstrukturin der Da-tenbankforcedelete: (force) deletionthe instance with loid <arg0> and its subtree structurein the database createInstan: schaffe eine Instanz der Klasse <arg0> in der DatenbankcreateInstan: create an instance of class <arg0> in the database saveAsNew: dupliziere das Dokument <arg0> alsein neues (ändereBenutzerIds ab). Erfordert eine Zwischenablage.saveAsNew: duplicate the document <arg0> asa new (changeUser IDs from). Requires a clipboard. copyDocument: dupliziere das Dokument <arg0> indie ZwischenablagecopyDocument: duplicate the document <arg0> inthe clipboard move: verschiebe das Dokument <arg0> zu einer ande-renDatenbank <arg1>. Verkettungen zuralten Datenbank werden bestehen bleiben! Erfordert eine Zwischenablagemove: move the document <arg0> to anotherDatabase <arg1>. Concatenations forold database will remain! Requires a clipboard link: verkette das Dokument <arg0> mit dem Root-Dokument <arg1>link: chain the document <arg0> with the root document <arg1> unlink: lösedie Verkettung des Dokuments <arg0> mit seinem Root-Dokumentunlink: solvethe concatenation of the document <arg0> with its root document query: führeeine Datenbankabfrage unter Verwendung der Versant-Abfragesprachedurch, z.B. die Abfrage „selectselfoid from CsaPatient"query: leada database query using the Versant query languagethrough, e.g. the query “selectselfoid from CsaPatient " lock: sperre ein Objekt mit Loid <arg0> mitSperre <arg1> (RLOCK, WLOCK, ULOCK,...)lock: lock an object with Loid <arg0>Lock <arg1> (RLOCK, WLOCK, ULOCK,...) nulls: liste verwendete und leere Attribute auf (ein = Voreinstellung),oder nicht (aus) Nullen ein (Voreinstellung): liste auch leereAttribute auf Nullen aus: liste keine leeren Attribute aufnulls: list used and empty attributes (on = default),or not (off)Zero on (default): also list empty onesAttributes onZero out: don't list any empty attributes modify: änderedie Instanz mit Loid <arg0> ab, setze Attribut <arg1>, Index <arg2> mit Operation <arg3> auf <arg4>. Operationensind: Set/Remove/Add/RemoveOne/InsertOne/ReplaceOne Alle 4Argumente müssenangegeben. werden, auch wenn sie für den jeweiligen Vorgang keinenSinn machen.modify: changethe instance with loid <arg0>, set attribute <arg1>, index <arg2> with operation <arg3> to <arg4>.operationsare:Set / Remove / Add / RemoveOne / InsertOne / ReplaceOne All 4Arguments mustspecified. even if they do not have any for the respective processMake sense. file: lies Befehle aus der Dateien <arg0> (gleicheSyntax wie im Modus -i)file: read commands from the files <arg0> (sameSyntax as in mode -i) i: schalte auf interaktiven Modus um (die Befehle sind gleich,aber das vorangehende "-" ist wegzulas-sen!)i: switch to interactive mode (the commands are the same,but the preceding "-" must be left out!) logging: drucke die CsaStatus-Punkte in Fehlermeldung (ein =Voreinstellung) oder nicht (aus)logging: print the CsaStatus points in error message (a =Default) or not (off) exit: verlasse den interaktiven Modus/Dateimodusexit: leave interactive mode / file mode quit: gleich wie "exit"quit: same as "exit" server: Servermodus: Warte auf Befehle in der Datei <arg0>, lösche die Datei nach der Ausführung. Schreibe Ergebnissein die Datei <arg1>server: server mode: waiting for commands in the file <arg0>, delete the file after execution. Write resultsto the <arg1> file pad: kürzeDaten, damit sie auf eine 120-Zeichen-Zeile passen (ein = Voreinstellung),oder nicht (aus)pad: shortData to fit on a 120-character line (on = default),or not (off) load: lade eine (mehrere) Abbildung(en), die durch <arg0> gegeben ist (sind),in die Datenbank. Wildcards *WERDEN* unterstützt.load: load one (s) figure (s) given by <arg0>,into the database. Wildcards * ARE * supported. unload: entlade Image/Series/Study/Patient mit Loid <arg0> in Dicom Message indie Datei <arg1>unload: unload Image / Series / Study / Patient with Loid <arg0> in Dicom Message inthe file <arg1> listStoreDb: liste alle CsaStoreDB-Instanzen in der DatenbankauflistStoreDb: list all CsaStoreDB instances in the databaseon createStoreD: schaffe eine CsaStoreDB-Instanz mit dem Namen <arg0> und dem Pfad <arg1> in der DatenbankcreateStoreD: create a CsaStoreDB instance with the name <arg0> and the path <arg1> in the database autosave: veränderedas Flag fürautomatische Speiche-rung (Übergabenach jedem Befehl) automatische Speicherung ein (Voreinstellung):Ausführungnach jedem Befehls-Aufruf automatische Speicherung aus (Voreinstellung):Ausführung/Rollbackmuss durch den Benutzer aufgerufen werdenautosave: change the flag for automatic storage (transfer after each command) automatic storage on (default): execution after each command call automatic storage off (default): execution / rollback must be called by the user become ForAll: wiederhole den folgenden Block für alle aufgelisteten Loids;Syntax: forall xx ⎕cmds xx cmds⎕ ForAll: repeat the following block for all listed loids;Syntax: forall xx ⎕cmds xx cmds⎕ Repeat: wiederhole den folgenden Block (= <arg1>)ge-nau <arg0> Mal (-1 bedeutet "endlos"); Syntax: repeat num ⎕cmdscmds⎕Repeat: repeat the following block (= <arg1>)exactly <arg0> times (-1 means "endless"); Syntax: repeat num ⎕cmdscmds⎕ loadlibrary: lade eine Bibliothek, deren Name in <arg0> gegeben ist (DLL);VORSICHT: dies wird nur VOR dem Öffneneiner Datenbanksitzung klappen!loadlibrary: load a library whose name is given in <arg0> (DLL);CAUTION: this will only work BEFORE openinga database session work! initDbInfo: initialisiere ein DbInfo-Objekt in der Voreinstellungsdatenbankund stelle es mit den gegenwärtigen WerteneininitDbInfo: Initialize a DbInfo object in the preferences databaseand put it with the current valueson getDbInfo: hole das DbInfo-Objekt in der Voreinstellungs-Datenbankund liste seine Inhalte aufgetDbInfo: get the DbInfo object in the preferences databaseand list its contents checkConfig: überprüfe die Versant/Datenbank-KonfigurationcheckConfig: check the Versant / database configuration sleep: ruhe einige Sekunden <arg1>sleep: rest a few seconds <arg1> date: drucke Datum und Zeitdate: print date and time echo: drucke eine Zeichenkette <arg0>echo: print a string <arg0> pxsv: sende Befehl <arg0> und Daten <arg1> zum Patex-Serverpxsv: send command <arg0> and data <arg1> to the Patex server xmldump: Speicherauszug der Daten nach XML. Arg0 = type:COMPOSITE/CLOSURE/ENTITY/QUERY. Arg1 = Loid oder Klassenname Arg2= Dateinamexmldump: data dump according to XML.Arg0 = type:COMPOSITE / CLOSURE / ENTITY / QUERY.Arg1 = Loid or class namearg2= File name sort: sortiere <Arg0> nach den Kriterien <arg1>. Er-zwinge immer eineNeusortierung:sort: sort <Arg0> according to the criteria <arg1>. He's always forcing onereordering: getsorted: hole eine nach den Kriterien <arg1> sor-tierteListe fürdas Objekt <arg0>getsorted: get a sorted according to the criteria <arg1>List forthe object <arg0> updatescs: überprüfe und aktualisieredas SCS-Attribut hinsichtlich Loid <arg0>updatescs: check and updatethe SCS attribute regarding loid <arg0>
权利要求:
Claims (30) [1] Datenverarbeitungseinrichtung zum Nachprüfen einesZustands eines Computersystems, umfassend Folgen-des: eineEinrichtung, um den Zustand des Computersystems durch mehrere Aspektedes Computersystems zu definieren, eine Einrichtung, um aufein Softwareprogramm zuzugreifen, um das Computersystem in einendurch mehrere er-wartete Aspekte definierten erwarteten Zustandzu brin-gen; eine Einrichtung, um das Softwareprogramm am Computersystemauszuführen,wonach sich das Computersystem in einem durch mehrere gegenwärtige Aspektedefinierten gegenwärtigenZustand befindet; und eine Einrichtung, um auf Basis einesVergleichs von zumindest einem der mehreren gegenwärtigen Aspekte mitzumindest einem der mehreren erwarteten Aspekte nachzu-prüfen, obder gegenwärtigeZustand des Computersystems der erwartete Zustand ist.Data processing device for checking aState of a computer system comprising the following:aEstablishment to the state of the computer system through several aspectsof the computer system to definea facility to onaccess a software program to put the computer system into oneexpected state defined by several expected aspectsbring to;a facility to run the software program on the computer systemperform,according to which the computer system is characterized by several current aspectsdefined currentCondition located; anda facility to build on aComparison of at least one of the several current aspects withto check whether at least one of the several expected aspectsthe current oneState of the computer system is the expected state. [2] Datenverarbeitungseinrichtung nach Anspruch 1, wobeidie Aspekte des Computersystems voneinander unab-hängig sind.Data processing device according to claim 1, whereinthe aspects of the computer system are independent of each other. [3] Datenverarbeitungseinrichtung nach Anspruch 1, wobeidie Aspekte aus einer Gruppe gewähltwerden, die aus der graphischen Benutzeroberfläche, der Datenbank, der Sicherheit,der Benutzerkonfiguration, der Ortskon-figuration und dem gegenwärtigen Benutzerbesteht.Data processing device according to claim 1, whereinthe aspects chosen from a groupfrom the graphical user interface, the database, security,the user configuration, the location configuration and the current userconsists. [4] Datenverarbeitungseinrichtung nach Anspruch 1, wobeidas Softwareprogramm ein automatisiertes Prüfpro-gramm für das Computersystemumfaßt.Data processing device according to claim 1, whereinthe software program is an automated test program for the computer systemincludes. [5] Datenverarbeitungseinrichtung nach Anspruch 4, wobeidas automatisierte Prüfprogrammaus der Gruppe gewähltwird, die aus einem Vorbedingungsprüfungspro-gramm, einem Prüfungsskriptund einem Nachbedingungs-prüfungsprogrammbesteht.Data processing device according to claim 4, whereinthe automated test programchosen from the groupis made up of a prerequisite test program, a test scriptand a post-condition check programconsists. [6] Datenverarbeitungseinrichtung nach Anspruch 1, wobeidie Einrichtung zum Nachprüfen,ob der gegenwär-tigeZustand des Computers der erwartete Zustand ist, eine Einrichtungumfasst, um zu bestimmen, ob die ge-genwärtigen Aspekte mit entsprechendenvorbestimmten Aspekten übereinstimmen.Data processing device according to claim 1, whereinthe facility for verification,whether the current oneState of the computer the expected state is a facilityincludes to determine whether the current aspects match with thosepredetermined aspects agree. [7] Datenverarbeitungseinrichtung nach Anspruch 1, fernerumfassend eine Einrichtung, um zumindest einen der gegenwärtigen Aspekteabzuändern,um den Zustand des Computersystems in einen durch Wiederherstellungs-aspektedefinierten Wiederherstellungszustand zu verän-dern.The data processing device according to claim 1, furthercomprising a facility to address at least one of the current aspectsmodify,to the state of the computer system in one through recovery aspectschange the defined recovery state. [8] Datenverarbeitungseinrichtung nach Anspruch 7, wobeidie Einrichtung zum Abändernvon zumindest einem der gegenwärtigenAspekte ausgeführtwird, wenn der ge-genwärtigeZustand nicht als der erwartete Zustand ve-rifiziert wird.The data processing device of claim 7, wherein the means for modifying at least one of the current aspects is performed when the current condition is not as expected Condition is verified. [9] Datenverarbeitungseinrichtung nach Anspruch 8, fernerumfassend eine Einrichtung, um zu Bestimmen, welche gegenwärtigen Aspektenicht den Wiederherstel-lungsaspekten entsprechen, wobei die Einrichtung zumAbändernzumindest eines Aspekts eine Einrichtung zum Abändern der gegenwärtigen Aspekteenthält, dienicht den Wiederherstellungsaspekten entsprechen.The data processing device according to claim 8, furthercomprising a facility to determine what current aspectsdo not correspond to the restoration aspects, the facility foramendat least one aspect means for changing the current aspectscontains thatdo not correspond to the recovery aspects. [10] Datenverarbeitungseinrichtung nach Anspruch 9, wobeider Wiederherstellungszustand ein Systemvorein-stellungszustandist; und wobei die Einrichtung zum Abändern eine Einrichtung um-faßt, um dengegenwärtigenAspekt in einen Systemvoreinstellungsaspekt abzuändern.Data processing device according to claim 9, whereinthe recovery state is a system default stateis; andwherein the means for modifying comprises means for thecurrentChange aspect to a system preset aspect. [11] Datenverarbeitungseinrichtung zum Abändern ei-nesZustands eines Computersystems, umfassend Folgen-des: eineEinrichtung, um den Zustand des Computersystems durch mehrere Aspektedes Computersystems zu definieren, eine Einrichtung, um einSoftwareprogramm am Computersystem auszuführen, wonach sich das Computersystemin einem durch mehrere gegenwärtigeAspekte definierten gegenwärtigenZustand befindet; eine Einrichtung, um auf Basis des gegenwärtigen Zustandsdes Systems zu bestimmen, ob ein automatisches Wiederherstellungsprogrammauszuführenist; und eine Einrichtung, um das automatische Wiederherstellungsprogrammauszuführen,wobei das automatische Wiederherstellungsprogramm zumindest einenAspekt abän-dert,um das Computersystem in einen Wiederherstellungszustand zu bringen.Data processing device for changing oneState of a computer system comprising the following:aEstablishment to the state of the computer system through several aspectsof the computer system to definea facility to aExecute software program on the computer system, after which the computer systemin one by several presentAspects defined currentCondition located;a facility to based on the current stateof the system to determine whether an automatic recovery programperformis; anda facility to run the automatic recovery programperform,the automatic recovery program at least oneChanges aspect,to bring the computer system into a recovery state. [12] Datenverarbeitungseinrichtung nach Anspruch 11,wobei die Aspekte des Computersystems voneinander unab-hängig sind.Data processing device according to claim 11,the aspects of the computer system being independent of one another. [13] Datenverarbeitungseinrichtung nach Anspruch 11,wobei das Softwareprogramm ein automatisiertes Prüfpro-grammist, das dazu ausgedildet ist, das Systems in ei-nen erwartetenZustand mit erwarteten Aspektenzu brin-gen; und wobei die Einrichtungzum Bestimmen, ob ein automatisches Wiederherstellungsprogramm auszuführen ist, eineEinrichtung umfaßt,um die gegenwärtigenAspekte mit den erwarteten Aspekten zu vergleichen, um zu bestim-men,ob der gegenwärtigeZustand der erwartete Zustand ist.Data processing device according to claim 11,the software program being an automated test programwhich is trained to do the expected systemBring condition with expected aspects; andbeing the establishmentto determine whether to run an automatic recovery program, aDevice includesto the currentCompare aspects with the expected aspects to determinewhether the currentState is the expected state. [14] Datenverarbeitungseinrichtung nach Anspruch 13,ferner umfassend eine Einrichtung, um zu bestimmen, welche der gegenwärtigen Aspektevon den entsprechenden Wiederherstellungsaspekten unterschiedlichsind; und wobei das automatische Wiederherstellungsprogrammein Abändernder gegenwärtigenAspekte, welche von den entsprechenden Wiederherstellungsaspektenunterschiedlich sind, umfaßt.Data processing device according to claim 13,further comprising means for determining which of the current aspectsdifferent from the corresponding recovery aspectsare; andbeing the automatic recovery programa changethe currentAspects that differ from the corresponding recovery aspectsare different. [15] Datenverarbeitungseinrichtung nach Anspruch 14,wobei das automatische Wiederherstellungsprogramm aus einem automatischenAbändernder gegenwärtigenAspekte, die von den entsprechenden Wiederherstellungsaspekten unterschiedlichsind, besteht.Data processing device according to claim 14,where the automatic recovery program from an automaticamendthe currentAspects that differ from the corresponding recovery aspectsare. [16] Datenverarbeitungseinrichtung nach Anspruch 15,wobei der gegenwärtigeZustand einen unbekannten Zu-stand umfaßt; und wobei der Wiederherstellungszustandeinen Systemvoreinstellungszustand umfaßt.Data processing device according to claim 15,being the currentState includes an unknown state; andbeing the recovery stateincludes a system default state. [17] Datenverarbeitungseinrichtung nach Anspruch 11,wobei das automatische Wiederherstellungsprogramm aus einem Abändern vonAspekten des Computersystems be-steht.Data processing device according to claim 11,whereby the automatic recovery program consists of a modification ofAspects of the computer system. [18] Datenverarbeitungseinrichtung nach Anspruch 11,wobei das automatische Wiederherstellungsprogramm As-pekte des Computersystemsunabhängigvoneinander abän-dert.Data processing device according to claim 11,the automatic recovery program aspects of the computer systemindependentlychanges from each other. [19] Datenverarbeitungseinrichtung nach Anspruch 11,wobei das Softwareprogramm ein erstes automatisiertes Prüfprogrammmit einem ersten übergeordnetenZustand ist und wobei die Einrichtung zum Bestimmen, ob einautomatisches Prüfprogrammausgeführtwerden soll, eine Ein-richtung um faßt, um den ersten übergeordnetenZustand mit einem zweiten übergeordnetenZustand eines zweiten automatisierten Prüfprogramms zu vergleichen,wobei das zweite automatisierte Prüfprogramm im Anschluß an daserste automatisierte Prüfprogrammausgeführtwird.Data processing device according to claim 11,the software program being a first automated test programwith a first parentCondition is andthe means for determining whether aautomatic test programaccomplishedis to be a facility to include the first parentState with a second parentCompare the state of a second automated test program,the second automated test program following thefirst automated test programaccomplishedbecomes. [20] Datenverarbeitungseinrichtung nach Anspruch 11,wobei das automatische Wiederherstellungsprogramm ein iterativesVersuchen, zumindest einen Aspekt des Sys-tems abzuändern, umfaßt.Data processing device according to claim 11,the automatic recovery program being an iterativeAttempts to modify at least one aspect of the system include. [21] Datenverarbeitungseinrichtung nach Anspruch 20,wobei das automatische Wiederherstellungsprogramm ite-rativ versucht,Aspekte wiederherzustellen, bis eine Anzahl von Aspekten, die voneiner Iteration zu einer nachfolgenen Iteration nicht wiederherstellbarsind, konstant bleibt.Data processing device according to claim 20,the automatic recovery program tries iteratively,Restore aspects until a number of aspects byan iteration to a subsequent iteration cannot be restoredare constant. [22] Datenverarbeitungseinrichtung nach Anspruch 11,wobei die Einrichtung zum Ausführeneines automatischen Wiederherstellungsprogramms Folgendes umfaßt: eineEinrichtung, um zu versuchen, einen ersten Aspekt in einen erstenWiederherstellungsaspekt abzuändern; eineEinrichtung, um zu bestimmen, dass der Versuch, den ersten Aspektabzuändern,fehlgeschlagen ist; eine Einrichtung, um andere Aspekte inWiederherstellungsaspekten abzuändern;und eine Einrichtung, um zumindest ein zweites Mal zu versuchen,den ersten Aspekt in den ersten Wiederherstellungsaspekt abzuändern.Data processing device according to claim 11,being the means to executean automatic recovery program includes:aSet up to try a first aspect in a firstChange recovery aspect;aEstablishment to determine that trying the first aspectmodify,failed;a facility to look into other aspectsChange recovery aspects;anda facility to try at least a second timeto change the first aspect into the first recovery aspect. [23] Datenverarbeitungseinrichtung nach Anspruch 11,ferner umfassend eine Einrichtung, um ein zweites auto-matisiertes Wiederherstellungsprogrammauszuführen,das das System neu hochfährt.Data processing device according to claim 11,further comprising means for a second automated recovery programperform,that the system reboots. [24] Verfahren zum Nachprüfen eines Zustands eines Computersystems,umfassend Folgendes: Definieren des Zustands des Computersystemsdurch meh-rere Aspekte des Computersystems; Zugreifen auf einSoftwareprogramm, um das Computersystem in einen durch mehrere erwarteteAspekte de-finierten erwarteten Zustand zu bringen; Ausführen desSoftwareprogramms am Computersystem, wo-nach sich das Computersystemin einem durch mehrere ge-genwärtigeAspekte definierten gegenwärtigenZustand befindet; und Nachprüfen, auf Basis eines Vergleichsvon zumindest einem der mehreren gegenwärtigen Aspekte mit zumindesteinem der mehreren erwarteten Aspekte, ob der gegenwär-tige Zustanddes Computersystems der erwartete Zustand ist.Method for checking a state of a computer system,comprising the following:Define the state of the computer systemthrough several aspects of the computer system;Access oneSoftware program to turn the computer system into one expected by severalBring aspects of de-defined expected state;Execute theSoftware program on the computer system, according to which the computer systemin one by several presentAspects defined currentCondition located; andCheck based on a comparisonof at least one of the several current aspects with at leastone of the several expected aspects of whether the current statethe expected state of the computer system. [25] Verfahren nach Anspruch 24, wobei das Nachprü-fen, obder gegenwärtigeZustand des Computersystems der erwartete Zustand ist, ein Bestimmen,ob die gegen-wärtigenAspekte entsprechenden vorbestimmten Aspekten gleich sind, umfaßt.The method of claim 24, wherein checking whetherthe current oneState of the computer system the expected state is a determiningwhether the currentAspects corresponding to predetermined aspects are the same. [26] Verfahren nach Anspruch 24, ferner umfassend einAbändernvon zumindest einem der gegenwärtigen As-pekte,um den Zustand des Computersystems in einen durch Wiederherstellungsaspektedefinierten Wiederher-stellungszustand zu verändern.The method of claim 24, further comprising aamendof at least one of the current aspects,to the state of the computer system in one by recovery aspectschange the defined recovery status. [27] Verfahren zum Abänderneines Zustands eines Computersystems, umfassend Folgendes: Definierendes Zustands des Computersystems durch meh-rere Aspekte des Computersystems; Ausführen einesSoftwareprogramms am Computersystem, wonach sich das Computersystemin einem durch mehrere gegenwärtigeAspekte definierten gegenwärtigenZustand befindet; Bestimmen, auf Basis des gegenwärtigen Zustandsdes Systems, ob ein automatisches Wiederherstellungsprogramm auszuführen ist;und Ausführendes automatischen Wiederherstellungsprogramms, wobei das automatischeWiederherstellungsprogramm zumindest einen Aspekt abändert, umdas Computersystem in einen Wiederherstellungszustand zu bringen.Modification procedurea state of a computer system, comprising:Definethe state of the computer system through multiple aspects of the computer system;Do oneSoftware program on the computer system, according to which the computer systemin one by several presentAspects defined currentCondition located;Determine based on the current statethe system whether to run an automatic recovery program;andTo runof the automatic recovery program, the automaticRecovery program changes at least one aspect tobring the computer system into a recovery state. [28] Verfahren nach Anspruch 27, wobei das Softwareprogrammein automatisiertes Prüfprogrammist, das dazu ausgebildet ist, das System in einen erwarteten Zustandmit erwarteten Aspekten zu bringen; und wobei das Bestimmen,ob ein automatisches Wiederherstellungsprogramm auszuführen ist,ein Vergleichen der gegenwärtigenAspekte mit den erwarteten Aspekten zum Bestimmen, ob der gegenwärtige Zustandder erwarte-te Zustand ist, umfaßt.The method of claim 27, wherein the software programan automated test programthat is configured to put the system in an expected stateto bring with expected aspects; andbeing determiningwhether to run an automatic recovery programa comparison of the current onesAspects with the expected aspects to determine whether the current statethe expected condition is included. [29] Verfahren nach Anspruch 27, wobei das automatischeWiederherstellungsprogramm ein iteratives Versu-chen, zumindesteinen Aspekt des Systems abzuändern,umfaßt.The method of claim 27, wherein the automaticRecovery program an iterative attempt, at leastto change one aspect of the system,includes. [30] Verfahren nach Anspruch 27, wobei das automatischeWiederherstellungsprogramm Aspekte des Computersystems unabhängig voneinanderabändert.The method of claim 27, wherein the automaticRecovery program aspects of the computer system independentlyamends.
类似技术:
公开号 | 公开日 | 专利标题 EP2815372B1|2018-04-18|Cloud-basiertes medizinisches bildbearbeitungssystem mit anonymem datenupload und -download EP3274825B1|2018-11-07|Verfahren und ausführungsumgebung zum gesicherten ausführen von programmbefehlen US20150095890A1|2015-04-02|Automated management of software requirements verification US6952689B2|2005-10-04|Automating expert knowledge with analyzer harness US8315174B2|2012-11-20|Systems and methods for generating a push-up alert of fault conditions in the distribution of data in a hierarchical database US8074204B2|2011-12-06|Test automation for business applications Mateescu et al.2011|Adaptation of service protocols using process algebra and on-the-fly reduction techniques DE4118454C2|2001-03-01|System for automatic testing of user software US8713526B2|2014-04-29|Assigning runtime artifacts to software components US8312430B2|2012-11-13|Guarding code check-in with test case execution results DE69922015T2|2005-12-01|METHOD AND DEVICE FOR TRANSLATING AND EXECUTING AN ARTEY CODE IN AN ENVIRONMENT WITH VIRTUAL MACHINES KR100579956B1|2006-05-12|Change monitoring system of computer system US7007200B2|2006-02-28|Error analysis fed from a knowledge base DE602004010563T2|2008-12-11|Detailed identification of hardware to connect the software to a change-tolerant computer system KR101323073B1|2013-10-29|선언형 관리 프레임워크 DE10296798B4|2009-03-19|SMM loader and execution mechanism for component software for multiple architectures US7421490B2|2008-09-02|Uniquely identifying a crashed application and its environment US7136916B2|2006-11-14|Method for event management DE69730276T2|2005-08-18|Apparatus and method for facilitating the avoidance of exceptional specific conditions during the course of a program EP1103218B1|2005-12-28|Verfahren zur Beseitigung von Bildartefakten in einem medizinischen System US20030208490A1|2003-11-06|System and method for data storage, control and access US7620856B2|2009-11-17|Framework for automated testing of enterprise computer systems US7634559B2|2009-12-15|System and method for analyzing network software application changes JP5357890B2|2013-12-04|System and method for synchronizing drug configuration information among multiple systems including drug configuration information US8458690B2|2013-06-04|Automated software deployment triggered by state differences in distributed systems
同族专利:
公开号 | 公开日 US20040250156A1|2004-12-09| US20040250155A1|2004-12-09| US7571352B2|2009-08-04|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2004-12-30| OP8| Request for examination as to paragraph 44 patent law| 2006-05-11| 8120| Willingness to grant licences paragraph 23| 2006-09-28| 8130| Withdrawal|
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|